在PHP中打印和解析JSON变量
我有以下带有JSON变量的PHP代码在PHP中打印和解析JSON变量,php,json,parsing,Php,Json,Parsing,我有以下带有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.67
$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);
打印返回“0”:有任何建议/示例吗
我还想提取/打印夫妻喜欢的坐标
44.908993, 7.675583
44.908758, 7.675448
如有任何建议,将不胜感激
谢谢
Cesare您需要打印(json解码($route\u geometry\u json))
它和不json编码
json\u encode
用于创建json字符串。但由于您已经有了一个JSON字符串,因此需要对其进行解码,使其成为一个数组/对象
更新
你的要求
echo "Route geometry -->";
print_r(json_decode($route_geometry_json));
您无法解析字符串和对象,因此出现了解析错误。您需要打印(json解码($route\u geometry\u json))
它和非json编码
json\u encode
用于创建json字符串。但由于您已经有了一个JSON字符串,因此需要对其进行解码,使其成为一个数组/对象
更新
你的要求
echo "Route geometry -->";
print_r(json_decode($route_geometry_json));
您无法解析字符串
和对象
,因此出现了该解析错误。请使用以下代码:
$route_geometry = json_decode($route_geometry_json);
foreach ($route_geometry->route_geometry as $value) {
echo $value[0].', '.$value[1].'<br />';
}
$route\u geometry=json\u decode($route\u geometry\u json);
foreach($route\u geometry->route\u geometry as$value){
回显$value[0]。,'.$value[1]。
;
}
使用以下代码:
$route_geometry = json_decode($route_geometry_json);
foreach ($route_geometry->route_geometry as $value) {
echo $value[0].', '.$value[1].'<br />';
}
$route\u geometry=json\u decode($route\u geometry\u json);
foreach($route\u geometry->route\u geometry as$value){
回显$value[0]。,'.$value[1]。
;
}
yep,encode将值转换为json,而decode将json转换为变量yep,encode将值转换为json,而decode将json转换为变量谢谢!我试过了,但结果是。。。。。“注意:stdClass类的对象无法转换为int…”:-(使用print\u r
进行打印我尝试使用“print\u r”进行打印,现在错误是“Parse error:syntax error,unexpected'”“Route geometry-->'(T\u CONSTANT\u ENCAPSED\u STRING)”…从字符串中删除反斜线,它应该可以工作…”“Route\u geometry”并对整个字符串使用单引号。由于无法将字符串和对象合并为一个字符串。因此,请以不同方式打印它们。谢谢!我尝试过,但结果是…“注意:stdClass类的对象无法转换为int…”:-(使用print\r
打印我尝试使用“print\r”打印,现在错误是“解析错误:语法错误,意外的”“路由几何-->”(T_常量_封装的_字符串)“…从字符串中删除反斜杠,它应该可以工作…”“路由几何”并对整个字符串使用单引号。请尝试,因为不能将字符串和对象合并为一个。因此,以不同的方式打印它们。