Как получить имя свойства JSON php

У меня есть следующий файл JSON:

{"ver":2,"sb":[some array],"ld":[some array] ,"hd":[some array]} 

Я пытаюсь передать имена свойств следующим кодом:

 $path='./datafiles/jsonTest.json'; $data = json_decode(file_get_contents($path)); $properties=get_object_vars($data); foreach($properties as $propName){ echo $propName.'<br>'; } 

но в результате я получаю:

 2 Array Array Array 

когда мне нужно:

 'ver' 'sb' 'ld' 'hd' 

Кто-нибудь может мне помочь? Благодаря!

Если вам не нужен результирующий вывод в качестве объекта, вы можете использовать версию массива json_decode

 $data = json_decode(file_get_contents($path), true); $properties = array_keys($data); 

вы также можете попробовать использовать json_decode, чтобы дать вам ассоциативный массив

 $path='./datafiles/jsonTest.json'; $data = json_decode(file_get_contents($path),true); foreach($data as $name => $value){ echo $name.'<br>'; } 

Вы пробовали ключ?

 foreach($properties as $key => $propName){ echo $key.'<br>'; } 

Вы можете использовать отражение, чтобы получить имена свойств ( http://php.net/manual/en/reflectionclass.getproperties.php ) – что было бы элегантным способом – или вы решили не расшифровывать данные Json и извлекать имена и значения с ручными строковыми операциями.