php使用json_decode返回NULL

WBOY
リリース: 2016-06-13 10:53:26
オリジナル
1329 人が閲覧しました

php5.2以后自带json_decode函数,但是对json文本串的格式要求非常严格。

 

很可能使用该函数得到的返回值是NULL

 

使用json_last_error()函数获取到的返回值是JSON_ERROR_SYNTAX(Syntax error)。

 

可以通过以下几个方式排错。

 

1. json字符串必须以双引号包含

 

$output = str_replace("'", '"', $output);

 

2. json字符串必须是utf8编码

$output = iconv('gbk', 'utf8', $output);

 

3.不能有多余的逗号 如:[1,2,]

用正则替换掉,preg_replace('/,\s*([\]}])/m', '$1', $output) 

 

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート