0

我有这个 jsone,我需要在三个不同的对象中进行转换。在一些 php.ini 中。我知道我必须使用 json_decode 但我只解码第一个对象,其他 2 个对象没有。

{
"recorrido":[
{
"lon":"-60.67216873168769",
"lat":"-32.9230105876913",
"date":"13/10/24-12:22:32",
"globaltime":"00:09",
"globalkm":0.0,
"speed":2.11,
"altitude":-32.9230105876913,
"groupId3":0,
"id":1,
"color":0,
"auxInt":0,
"groupId2":0,
"provider":1,
"groupId1":0,
"workoutid":1
},
{
"lon":"-60.67216873168769",
"lat":"-32.9230105876913",
"date":"13/10/24-12:22:35",
"globaltime":"00:12",
"globalkm":0.0,
"speed":2.11,
"altitude":-32.9230105876913,
"groupId3":0,
"id":2,
"color":0,
"auxInt":0,
"groupId2":0,
"provider":1,
"groupId1":0,
"workoutid":1
}
],
"user":{
"asunto":"",
"userId":1
},
"Itemout":{
"uploaded":"false",
"isSelected":false,
"id":1,
}
}

你有什么建议?脚本必须在 php 中。对象“recorrido”是一个多数组对象。

4

2 回答 2

1

不对其进行测试,请尝试如下方式:

$tempArray = (array)$recorrido; // or how you cal your json object
foreach ($tempArray as $tempJson)
{
$myArray = json_decode($tempJson);
print_r($myArray);
}
于 2013-10-25T12:14:55.777 回答
0
  1. 如果您有静态 json 结构,则可以使用硬编码方法:

在下面显示

$result = json_decode($json);
$recorrido = $result->recorrido;
// And so on

在另一种方式中,有一种使用数组的解决方法。

list($arr1, $arr2, $arr3) = json_decode($json, true);

此解决方案将使您从 json.xml 获取三个数据数组。

于 2013-10-25T12:15:08.453 回答