<?php
$json = file_get_contents("https://api.twitch.tv/kraken/streams");
$elements = json_decode($json,true);
foreach ($elements as $element) {
$channel = get_object_vars($element);
print_r(array_keys($channel));
}
?>
Ошибки:
get_object_vars () ожидает, что параметр 1 будет объектом, массив указан в /home/xzer123/public_html/tw1.php в строке 10
array_keys () ожидает, что параметр 1 будет массивом, значение NULL указано в /home/xzer123/public_html/tw1.php в строке 11
что случилось не так?
Второй параметр для json_decode
указывает, что вы хотите результат в виде массива.
Измените это на false
или вы можете просто удалить его, потому что по умолчанию false
,
get_object_vars
ожидает объект, а не массив, который будет передан ему.
Извлечь содержимое как массив и не в качестве объекта вы можете использовать этот код, в первую очередь json_decode
результаты со вторым параметром установлены в true
тогда вы получите многомерный массив.
<?php
$json = file_get_contents("https://api.twitch.tv/kraken/streams");
$elements = json_decode($json,true);
foreach ($elements['streams'] as $element) {
print_r(array_keys($element));
}
?>