2015-07-16 2 views

ответ

3

Это действительно просто, проверьте этот код.

<?php 

//get JSON 
$json = file_get_contents('http://api.openweathermap.org/data/2.5/find?q=Calabar,NG&type=accurate&mode=jso‌​n'); 

//decode JSON to array 
$data = json_decode($json,true); 

//show data 
var_dump($data); 

//description 
echo $data['weather'][0]['description']; 
//temperature 
echo $data['main']['temp']; 


?> 

Кулак вам нужно получить файл/строку с function file_get_contents(), в данном случае это строка JSON. После того, как вам нужно декодировать эту строку с помощью функции json_decode(). Параметр true означает, что мы хотим проанализировать эту строку до массив вместо объект. После этих действий вы можете работать с этим набором данных, поскольку это простой тип переменной массива. Это все.

EDIT:

Edited URL на основе Prodigy комментарий ниже

+0

Awsome! Остается только один вопрос; Что означает «[0]» в «echo $ data ['weather'] [0] ['description'];"? –

+0

Это индекс в массиве. У них, вероятно, несколько датчиков в некоторых городах, поэтому могут быть разные температуры (imho) – 3y3skill3r

+0

Я вижу, поэтому, когда вы помещаете «[1]», вы «можете» получить сообщение об ошибке? –

0

Вы можете использовать Curl или file_get_contents, а затем сохранить ответ. Затем проанализируйте ответ для значений, которые вы ищете.

Смежные вопросы