PHP json_decode返回null解析失败原因

json_decode要求的字符串比较严格:
(1)使用UTF-8编码
(2)不能在最后元素有逗号
(3)不能使用单引号
(4)不能有\r,\t,如果有请替换

所以问题来了,不小心在返回的json字符串中返回了BOM头的不可见字符,某些编辑器默认会加上BOM头,如下处理才能正确解析json数据:
<?php
    $result = json_decode(trim($contents,chr(239).chr(187).chr(191)),true);
    print_r($result );
?>

你可能感兴趣的:(PHP json_decode返回null解析失败原因)