我在网上找的一个函数:
function is_json($string)
{
json_decode($string);
return (json_last_error() == JSON_ERROR_NONE);
}
$str = '{id:23,name:"test"}';
$str = "{'id':23,'name':'test'}";
为什么在PHP7,均不是合法的json格式呢??
有没有靠谱的方法??
登录后复制
登录后复制
回复内容:
我在网上找的一个函数:
function is_json($string)
{
json_decode($string);
return (json_last_error() == JSON_ERROR_NONE);
}
$str = '{id:23,name:"test"}';
$str = "{'id':23,'name':'test'}";
为什么在PHP7,均不是合法的json格式呢??
有没有靠谱的方法??
登录后复制
登录后复制
JSON的格式,key与value都必须是双引号……
return json_encode($json)!==false
PHP7 采用了更严格的JSON规则,单引号已经不再能够用于引用和字段名。
var arr = {id:23,name:'test'}; //键名不用引号,值用单引号,在JS中,这样写都合法
alert(JSON.stringify(arr)); //但合法的JSON字符串应该是stringify后的模样 {"id":23,"name":"test"}
登录后复制