1
2
2 Answer
3
json_decode()がデコードできる間
失敗します
$ c = '{"title": ""、}';
最後の "empty"要素はパーサを捨てます。 それがまさに私のbookmarks.jsonのようなものです。
{"タイトル": ""、... "子供":[]}、]}
編集: json.orgはhttp://gggeek.altervista.org/sw/article_20061113.html[php jsonライブラリの比較]へのリンクです。 そしてそれらの比較チャートによれば。 zend jsonは、Firefoxのbookmark.jsonを解析できるはずです。 まだテストしていません。
edit2:どうしてそれをテストしないのですか…? はい、zend jsonは未変更のbookmarks.jsonを解析できます。
'Zend / Json.php'が必要です。 $ encodedValue = file_get_contents( 'Bookmarks 2009-05-24.json'); $ phpNative = Zend_Json :: decode($ encodedValue); var_dump($ phpNative);
版画
array(7){["title"] =>文字列(0) "" ["id"] => ... ["子"] => array(0){}}}}
2
VolkerKが言うように、 +] +
and `+} +`の両方の前にコンマを取り除く必要があります:
// ... row 7 // Remove the trailing comma because Firefox is lazy $hFile = preg_replace('/,\s*([\]}])/m', '$1', $hFile); // ... or using str_replace $hFile = str_replace(',]', ']', str_replace(',}', '}', $hFile));
しかし、あなたがブックマークのURIにアクセスしようとしている方法(私はあなたがしようとしていることだと思います)はうまくいきません。
ファイルのフォーマット/スキーマを再確認してください。