JSON — PHP OpenWeather

Хорошо, у меня возникли проблемы с пониманием того, как использовать API открытой погоды.
Я пытался использовать его как

<?php
$request = file_get_contents('http://api.openweathermap.org/data/2.5/forecast/city?id=myidblablabla'); //example ID

$jsonPHP  = json_decode($request);

echo $jsonPHP->city;

?>

Но я получаю сообщение об ошибке

Исправляемая фатальная ошибка: объект класса stdClass не может быть преобразован
вписать

Теперь есть еще 1 вопрос, который я должен задать, как я могу узнать температуру в городе, влажность и т. Д.? Из кода, который я получил, я получаю только Москву

0

Решение

Чтобы упростить его, вы также можете вместо этого преобразовать json в массив.

$jsonPHP  = json_decode($request,true);

Теперь давайте кратко обсудим это. Согласно документации (http://openweathermap.org/current),

Обратите внимание, что Я никогда не использовал этот API раньше. Я просто пытаюсь помочь здесь.

Если вы нажмете api.openweathermap.org/data/2.5/weather?lat=35&долгота = 139

Это отвечает как

{"coord":{"lon":139,"lat":35},
"sys":{"country":"JP","sunrise":1369769524,"sunset":1369821049},
"weather":[{"id":804,"main":"clouds","description":"overcast clouds","icon":"04n"}],
"main":{"temp":289.5,"humidity":89,"pressure":1013,"temp_min":287.04,"temp_max":292.04},
"wind":{"speed":7.31,"deg":187.002},
"rain":{"3h":0},
"clouds":{"all":92},
"dt":1369824698,
"id":1851632,
"name":"Shuzenji",
"cod":200}

Теперь, если вы хотите взять Погода а также влажность , это просто :

Погода :

echo $jsonPHP["weather"][0]["id"];

влажность:

echo $jsonPHP["main"]["humidity"];

Обратите внимание, что, если вы нажмете http://api.openweathermap.org/data/2.5/weather?lat=35&долгота = 139 и получить ответы как

{"cod":401, "message": "Invalid API key. Please see http://openweathermap.org/faq#error401 for more info."}

Для случая, они объяснили здесь:

http://openweathermap.org/faq#error401 который :

Q: вызовы API возвращают ошибку 401

A: Начиная с 9 октября 2015 года наш
API требует действительный APPID для доступа. Обратите внимание, что это не значит,
что наш API только для подписки — пожалуйста, найдите минутку, чтобы
зарегистрировать бесплатный аккаунт для получения ключа.

Приносим извинения за неудобства, но это необходимая мера,
поможет нам быстрее и надежнее предоставить вам наши услуги.

Для разработчиков FOSS: мы приветствуем бесплатное программное обеспечение с открытым исходным кодом и
готов помочь вам. Если вы хотите использовать данные OWM в вашем бесплатном программном обеспечении
приложение, пожалуйста, зарегистрируйте ключ API и подайте заявку, описывающую
Ваше приложение и ключ API зарегистрированы. OWM рассмотрит ваш запрос
снять ограничения доступа для вашего ключа, если используется в приложении с открытым исходным кодом.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]