2016-03-31 2 views
0

Я следующий PHP-код с переменной JSON ...Печать и разборе переменной JSON в PHP

$route_geometry_json = "{ 
    \"route_geometry\": [ 
     [44.911537, 7.671326], 
     [44.911481, 7.671462], 
     [44.911455, 7.671531], 
     [44.911434, 7.671602], 
     [44.911358, 7.671859], 
     [44.911273, 7.672175], 
     [44.911198, 7.672458], 
     [44.91113, 7.672617], 
     [44.911069, 7.67275], 
     [44.911003, 7.672821], 
     [44.910945, 7.672881], 
     [44.910869, 7.672954], 
     [44.910868, 7.673046], 
     [44.91091, 7.673109], 
     [44.91095, 7.67319], 
     [44.910964, 7.673266], 
     [44.910958, 7.673407], 
     [44.910955, 7.6735], 
     [44.910947, 7.673632], 
     [44.910922, 7.673871], 
     [44.910828, 7.674786], 
     [44.910711, 7.675816], 
     [44.910606, 7.676364], 
     [44.910467, 7.676322], 
     [44.910368, 7.676308], 
     [44.910051, 7.676253], 
     [44.9097, 7.676162], 
     [44.90944, 7.676041], 
     [44.909297, 7.675958], 
     [44.909174, 7.67583], 
     [44.909107, 7.675722], 
     [44.908993, 7.675583], 
     [44.908758, 7.675448], 
     [44.90796, 7.675037] 
    ] 
    }"; 

print "Route geometry -->" + json_encode($route_geometry_json); 

Отпечаток возвращение «»: любое предложение/пример?

Я хотел бы также, чтобы извлечь/печатать COORDS пары как

44.908993, 7.675583 
    44.908758, 7.675448 

Любое предложение будет оценено ...

Благодаря

Чезаре

+0

Дa, закодировать преобразует значение в JSON, а декодирование преобразует JSON в переменную – philoniare

ответ

1

Используйте этот код:

$route_geometry = json_decode($route_geometry_json); 

foreach ($route_geometry->route_geometry as $value) { 
    echo $value[0].', '.$value[1].'<br />'; 
} 
1

Вы должны print_r(json_decode($route_geometry_json)) его и неjson_encode

json_encode предназначен для создания строки JSON. Но поскольку у вас уже есть строка JSON, вам нужно декодировать ее, чтобы сделать ее массивом/объектом.

UPDATE

Ваше требование

echo "Route geometry -->"; 
print_r(json_decode($route_geometry_json)); 

Вы не можете Concat в String и Object, так что вы получали, что синтаксическую ошибку.

+0

Спасибо! Я попытался, но результат ... ". Примечание: объект класса stdClass не может быть преобразован в int ....." :-( – Cesare

+0

использовать 'print_r' для печати –

+0

Я попытался использовать" print_r "для печати, и теперь ошибка" Ошибка анализа: ошибка синтаксиса, неожиданность "" Геометрия маршрута -> "'(T_CONSTANT_ENCAPSED_STRING)" .... – Cesare

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