JSON数据到正确的需要在php多个阵列格式 [英] json data into proper require multiple array format in php
本文介绍了JSON数据到正确的需要在php多个阵列格式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有这样的JSON响应
I have json response like this
Array
(
[0] => Array
(
[id] => 65070
[date] => 2015-06-05
[hour] => 0
[total] => 18
)
[1] => Array
(
[id] => 65070
[date] => 2015-06-05
[hour] => 2
[total] => 32
)
[2] => Array
(
[id] => 65070
[date] => 2015-06-07
[hour] => 0
[total] => 27
)
[3] => Array
(
[id] => 65070
[date] => 2015-06-07
[hour] => 2
[total] => 35
)
[4] => Array
(
[id] => 1838680
[date] => 2015-06-05
[hour] => 0
[total] => 957
)
[5] => Array
(
[id] => 1838680
[date] => 2015-06-05
[hour] => 2
[total] => 1266
)
[6] => Array
(
[id] => 1838680
[date] => 2015-06-07
[hour] => 0
[total] => 409
)
[7] => Array
(
[id] => 1838680
[date] => 2015-06-07
[hour] => 2
[total] => 1528
)
)
我想这样的输出
id Hour 2015-06-05 2015-06-07 Difference
65070 0 18 27 9
65070 2 32 35 3
1838680 0 957 409 -548
1838680 2 1266
小时不固定为0或2。它可以是2个以上或1还
Hour is not fixed to 0 or 2. It can be more than 2 or 1 also
推荐答案
我不知道写什么,这是常规的code
I do not know what to write, it is routine code
$newArray = array();
$dates = array();
foreach($array as $entry) {
$newArray[$entry['id']][$entry['hour']][$entry['date']]= $entry['total'];
if(!in_array($entry['date'], $dates)) $dates[] = $entry['date'];
}
sort($dates);
echo "id hour ". $dates[0] . " " . $dates[1] . " " . "difference"."\n";
foreach($newArray as $id => $hours)
foreach($hours as $hour => $entry)
echo $id ." " . $hour . " "
. $entry[$dates[0]] . " "
. $entry[$dates[1]] . " "
. ($entry[$dates[1]] - $entry[$dates[0]]) . "\n";
这篇关于JSON数据到正确的需要在php多个阵列格式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文