関数の出力の検証に問題がありjson_encode()
ます。
私はcURLを使用してXMLフィードを取得し、それを配列に変換し、その配列を。を使用してJSONに変換していますjson_endode()
。私はあなたにcURLのものを惜しまないでしょう:
foreach ($xmlObjects->articleResult as $articleResult) {
$article = array(
"articleResult" =>
array(
'articleId' => (string)$articleResult->articleId,
'title' => (string)$articleResult->title,
'subhead' => (string)$articleResult->subhead,
'tweet' => (string)$articleResult->tweet,
'publishedDate' => (string)$articleResult->publishedDate,
'image' => (string)$articleResult->image
),
);
$json = str_replace('\/','/',json_encode($article));
echo $json;
}
これは私に次のJSON読み出しを与えています:
{
"articleResult": {
"articleId": "0001",
"title": "Some title",
"subhead": "Some engaging subhead",
"tweet": "Check out this tweet",
"publishedDate": "January 1st, 1970",
"image": "http://www.domain.com/some_image.jpg"
}
}
{
"articleResult": {
"articleId": "0002",
"title": "Some title",
"subhead": "Some engaging subhead",
"tweet": "Check out this tweet",
"publishedDate": "January 1st, 1970",
"image": "http://www.domain.com/some_image.jpg"
}
}
これにより、次のようなJSONLintエラーが発生します。
Parse error on line 10:
..._120x80.jpg" }}{ "articleResult
---------------------^
Expecting 'EOF', '}', ',', ']'
したがって、当然、コンマを追加します。これにより、ファイルの終わりが期待できます。
Parse error on line 10:
..._120x80.jpg" }},{ "articleResu
---------------------^
Expecting 'EOF'
私はJSONを初めて使用しますが、適切なJSONのフォーマットと構造についてWebサイトといくつかのリソースを確認しました。この結果から、読み取り値はガイドラインに従っていることがわかります。ポインタはありますか?
私がチェックしたリソース:
JSON.orgは当然
ウィキペディアには十分に文書化されたページがあります
W3Resource構造の良い説明がありました。