我已经玩了几个小时了,运气不太好。
我当前的JSON看起来像这样:https://pastebin.com/TSmWFA2g
"10-10-2019 12:00AM":[
{
"speed":33,
"latitude":-11.2588112,
"longitude":100.8249533
},
{
"speed":33,
"latitude":-11.2381112,
"longitude":100.82509
},
{
"speed":31,
"latitude":-11.827312,
"longitude":100.8242733
}
],
"10-10-2019 12:01AM":[
{
"speed":29,
"latitude":-11.2902112,
"longitude":100.8202849
},
{
"speed":26,
"latitude":-11.2826432,
"longitude":100.3760333
}
]
我试图为每个日期查找具有最高“速度”的条目,并删除该日期下的其他条目(或使用单个条目创建一个新的数组。)>
编辑01:
我现在尝试过:function my_sort($a,$b) { return $b['speed'] - $a['speed']; } usort($finalData,"my_sort"); echo json_encode($finalData);
这将按速度对数据进行排序,但JSON现在不包括原始JSON中的日期。
[{"speed":33,"latitude":-11.2588112,"longitude":100.82509},
{"speed":33,"latitude":-11.2588112,"longitude":100.82509},
{"speed":31,"latitude":-11.2588112,"longitude":100.82509},
{"speed":31,"latitude":-11.2588112,"longitude":100.82509},
{"speed":33,"latitude":-11.2588112,"longitude":100.82509},
{"speed":32,"latitude":-11.2588112,"longitude":100.82509},
{"speed":24,"latitude":-11.2588112,"longitude":100.82509},
{"speed":16,"latitude":-11.2588112,"longitude":100.82509},]
我已经玩了几个小时了,运气还不太好。我当前的JSON看起来像这样:https://pastebin.com/TSmWFA2g“ 10-10-2019 12:00 AM”:[{“ speed”:33,...
<?php
$data = json_decode('{
"10-10-2019 12:00AM":[
{
"speed":33,
"latitude":-11.2588112,
"longitude":100.8249533
},
{
"speed":33,
"latitude":-11.2381112,
"longitude":100.82509
},
{
"speed":31,
"latitude":-11.827312,
"longitude":100.8242733
}
],
"10-10-2019 12:01AM":[
{
"speed":29,
"latitude":-11.2902112,
"longitude":100.8202849
},
{
"speed":26,
"latitude":-11.2826432,
"longitude":100.3760333
}
],
"10-10-2019 12:02AM":[
{
"speed":35,
"latitude":-11.2991112,
"longitude":100.0129199
},
{
"speed":33,
"latitude":-11.9273112,
"longitude":100.8734016
},
{
"speed":32,
"latitude":-11.2533212,
"longitude":100.19229
},
{
"speed":30,
"latitude":-11.2928112,
"longitude":100.2495099
},
{
"speed":24,
"latitude":-11.2228112,
"longitude":100.9266033
}
]
}',true);
$newArray=array();
foreach ($data as $key => $value) {
array_multisort(array_column($value, 'speed'), SORT_DESC, $value);
$newArray[$key]=$value[0];
}
echo "<pre>";
print_r($newArray);
echo "<pre>";
?>