How can I parse a JSON file with PHP? [duplicate]

I can’t believe so many people are posting answers without reading the JSON properly.

If you foreach iterate $json_a alone, you have an object of objects. Even if you pass in true as the second parameter, you have a two-dimensional array. If you’re looping through the first dimension you can’t just echo the second dimension like that. So this is wrong:

foreach ($json_a as $k => $v) {
   echo $k, ' : ', $v;

To echo the statuses of each person, try this:


$string = file_get_contents("/home/michael/test.json");
if ($string === false) {
    // deal with error...

$json_a = json_decode($string, true);
if ($json_a === null) {
    // deal with error...

foreach ($json_a as $person_name => $person_a) {
    echo $person_a['status'];


Leave a Comment