Я, наверное, весь день пытался понять это. Я прочитал несколько вопросов здесь, в стеке, а также читал статьи и проверял документацию, но я не могу понять, почему эта партия кода просто производит нулевой вывод. Я пропустил скобки, называя что-то не так, ect?PHP-декодирование JSON - нулевой вывод
<?php
$url = "http://api.openweathermap.org/data/2.5/weather?id=4879890&units=imperial";
$str = file_get_contents($url);
$json = json_decode($str);
$temp = $json['main']['temp_min'];
$content = $temp;
$array = array(
"content" => $content,
refresh_requency => 30
);
echo json_encode($array);
?>
Снова то, что я прошу, может кто-то указать мне или сказать мне, что я делаю неправильно. Это мой сервер, который просто не обрабатывает данные правильно? Это может быть возможностью.
Еще одна вещь, которую я пробовал, - это просто распечатать $temp
и/или другую переменную, например $str
. Когда я это делаю, хотя они даже не появляются, так что я думаю, что моя проблема просто не уверена, как ее исправить.
Update
Я пришел к выводу, что это мой веб-хостинг. Как будто я добавляю var_dump($json)
Я получаю нулевой вывод null
.
Также, чтобы подтвердить, что его мой веб-хост, если я запустил error_reporting(E_ALL); ini_set('display_errors', 1);
, указывает на файл php.ini, не позволяющий исходящие соединения. Я отредактировал тот же самый файл на моем локальном домашнем сервере (малина pi), выполнив тот же файл, и он отлично работает.
http://php.net/manual /en/function.json-decode.php читайте аргументы для 'json_decode()', если вы хотите декодировать как массив, установите для второго аргумента значение true. –