2013-11-24 4 views
0

Я пытаюсь извлечь конкретные значения вернулись из Google APIвозвращает элемент из массива вывода JSon

<?php 
$url='http://maps.googleapis.com/maps/api/distancematrix/json?origins=19.1629924,72.83930190&destinations=19.1802370,72.8554149&sensor=false'; 

$contents = file_get_contents($url); 
$contents = utf8_encode($contents); 
$array=json_decode($contents); 
echo $array['rows']['elements']['distance']['value']; 

?> 

Я ожидал, что значение 4238 должно быть возвращено. Вместо этого я получаю сообщение об ошибке:

`PHP Fatal error: Cannot use object of type stdClass as array in test9.php on` line 7 

ответ

0

Следующий код решить проблему:

$array=json_decode($contents, true); 
echo $array['rows'][0]['elements'][0]['distance']['value']; 
1

Te правильное решение:

echo $array->rows[0]->elements[0]->distance->value; 

Выполните следующие действия, чтобы увидеть JSON:

<?php 

$url='http://maps.googleapis.com/maps/api/distancematrix/json?origins=19.1629924,72.83930190&destinations=19.1802370,72.8554149&sensor=false'; 

$contents = file_get_contents($url); 
$contents = utf8_encode($contents); 
echo "<pre>"; 
echo $contents; 
echo "\n"; 
echo "\n"; 
$array=json_decode($contents); 
echo $array->rows[0]->elements[0]->distance->value; 

?> 

http://www.json.org/

Вы пробовали node.js?

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