我试图使用PHP解析JSON文件。但是我现在被困住了。
这是我的JSON文件的内容:
{ "John": { "status":"Wait" }, "Jennifer": { "status":"Active" }, "James": { "status":"Active", "age":56, "count":10, "progress":0.0029857, "bad":0 } }
到目前为止,这是我尝试过的:
<?php $string = file_get_contents("/home/michael/test.json"); $json_a = json_decode($string, true); echo $json_a['John'][status]; echo $json_a['Jennifer'][status];
但是,因为我不知道的名字(例如'John','Jennifer')和所有可用键和值(如'age','count')事前,我想我需要创建一些foreach循环。
'John'
'Jennifer'
'age'
'count'
我希望为此举一个例子。
要遍历多维数组,可以使用RecursiveArrayIterator
$jsonIterator = new RecursiveIteratorIterator( new RecursiveArrayIterator(json_decode($json, TRUE)), RecursiveIteratorIterator::SELF_FIRST); foreach ($jsonIterator as $key => $val) { if(is_array($val)) { echo "$key:\n"; } else { echo "$key => $val\n"; } }
输出:
John: status => Wait Jennifer: status => Active James: status => Active age => 56 count => 10 progress => 0.0029857 bad => 0