以下のように、PHPでJSONの読み込みを行っているのですが、JSON_ERROR_SYNTAXが出てしまいます。
正直、JSON書式のどこが間違っているのかよくわかりません。
どなたかご教授ください。
PHP
1$jsonUrl = "-----/hoge.json"; 2$json = file_get_contents($jsonUrl); 3$json = mb_convert_encoding($json, 'UTF8', 'ASCII,JIS,UTF-8,EUC-JP,SJIS-WIN'); 4$obj = json_decode($json,true); 5json_last_error();
hoge.json(UTF-8)
{"data":[
{"first":"maki","family":"nishikino"},
{"first":"rin","family":"hoshizora"},
{"first":"hanayo","family":"koizumi"}
]}
(追記1)
jsonの内容を文字列としてPHPに直書きしたところ、問題なく動きました。
皆様の仰る通り、JSON書式の問題ではないようでした。
jsonファイル作成の過程で、文字コード等に問題があったのか確認しています。
(追記2)
試しにjsonファイルをUTF-8以外で作成してみたところ、動作しました。
JSONファイル作成に用いたエディタ、あるいは文字コード変換でなにか問題があったものと考えられます。
回答3件
あなたの回答
tips
プレビュー