在 PHP json_decode() 中检测错误的 json 数据?
我正在尝试在通过json_decode()解析时处理错误的json数据。我使用以下脚本:
if(!json_decode($_POST)) {
echo "bad json data!";
exit;
}
如果 $_POST 等于:
'{ bar: "baz" }'
然后json_decode很好地处理错误并吐出“错误的json数据!但是,如果我将$_POST设置为“无效数据”之类的东西,它会给我:
Warning: json_decode() expects parameter 1 to be string, array given in C:\server\www\myserver.dev\public_html\rivrUI\public_home\index.php on line 6
bad json data!
我是否需要编写自定义脚本来检测有效的 json 数据,或者是否有其他一些漂亮的方法来检测此数据?