У меня есть следующий файл 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 и извлекать имена и значения с ручными строковыми операциями.