PHP5.2 以降には json_decode 関数が付属していますが、json テキスト文字列の形式要件は非常に厳格です。
この関数を使用して得られる戻り値はNULLである可能性が非常に高いです
json_last_error() 関数を使用して得られる戻り値は JSON_ERROR_SYNTAX (構文エラー) です。
次の方法でトラブルシューティングを行うことができます。
1. json 文字列は二重引用符で囲む必要があります
$output = str_replace("'", '"', $output);
2. json 文字列は utf8 でエンコードされている必要があります
$output = iconv('gbk', 'utf8', $output);
3. [1,2,]
などの余分なカンマは使用できません。
正規表現で置換 preg_replace('/,s*([]}])/m', '$1', $output)
http://www.bkjia.com/PHPjc/477869.htmlwww.bkjia.com本当http://www.bkjia.com/PHPjc/477869.html技術記事 PHP5.2 以降には json_decode 関数が付属していますが、json テキスト文字列の形式要件は非常に厳格です。 この関数を使用して得られる戻り値は NULL である可能性が高いです。 json_last_error() 関数を使用して得られる戻り値...