0

次のjsonファイルがあります。それを解析するにはphpのコードが必要です。考えられるすべての方法を試しましたが、うまくいきませんでした。私はjson解析の専門家ではありません。

{
     "_id" : { "oid" : "5213785fe4b0780ba56884d3" },
     "author" : "Remate.ph",
     "message" : "Suspected ASG abducts trader in Zamboanga City http://t.co/4hUttNPI",
     "time_created" : 1357958119000,
     "version" : "v2.1",          
},
{
     "_id" : { "oid" : "5213785fe4b0780ba56884d6" },
     "author" : "Clydepatrick Jayme ",
     "message" : "RT @iFootballPlanet: 74' Osasuna 0 - 0 Real Madrid\n\n-ASG.",
     "time_created" : 1358022721000,
     "version" : "v2.1",               
}

上記のjsonファイルを次のように変更しました。そして、それ用のphp解析コードを書きましたが、うまく機能します。

{
"info1":{
                "_id" : { "oid" : "5213785fe4b0780ba56884d3" },
                "author" : "Remate.ph",
                "message" : "Suspected ASG abducts trader in Zamboanga City http://t.co/4hUttNPI",
                "time_created" : 1357958119000,
                "version" : "v2.1",

},
"info2":{
                "_id" : { "oid" : "5213785fe4b0780ba56884d6" },
                "author" : "Clydepatrick Jayme ",
                "message" : "RT @iFootballPlanet: 74' Osasuna 0 - 0 Real Madrid\n\n-ASG.",
                "time_created" : 1358022721000,
                "version" : "v2.1",

}
}

次のコードを使用して解析しました。

<?php
//$string=file_get_contents("/Users/Anirudh/Downloads/test.json");
$string=file_get_contents("/Users/Anirudh/Sem-1/RA/Test/test.json");
$json_a=json_decode($string,true);

$jsonIterator = new RecursiveIteratorIterator(new RecursiveArrayIterator($json_a),RecursiveIteratorIterator::SELF_FIRST);
//$jsonIterator = new RecursiveArrayIterator(json_decode($string, TRUE));
foreach ($jsonIterator as $key => $val) {
echo "$key => $val\n";
}
?>

PHP を使用して解析された最初の json 形式を取得するのを手伝ってくれる人はいますか?

4

1 に答える 1

1

json ファイルに 2 つのエラーがあります。

  1. カンマで区切られた 2 つの第 1 レベルの項目 (info1 と info2) は配列である必要があり、文字列全体を角かっこ[とで囲みます]
  2. 最後の第 2 レベルのアイテム (バージョン) - 末尾のコンマを削除します"version" : "v2.1",

修正されたjson:

[{
     "_id" : { "oid" : "5213785fe4b0780ba56884d3" },
     "author" : "Remate.ph",
     "message" : "Suspected ASG abducts trader in Zamboanga City http://t.co/4hUttNPI",
     "time_created" : 1357958119000,
     "version" : "v2.1"
},
{
     "_id" : { "oid" : "5213785fe4b0780ba56884d6" },
     "author" : "Clydepatrick Jayme ",
     "message" : "RT @iFootballPlanet: 74' Osasuna 0 - 0 Real Madrid\n\n-ASG.",
     "time_created" : 1358022721000,
     "version" : "v2.1"
}]
于 2013-11-02T23:16:15.440 に答える