我有一个数组,我希望属于同一天的数据会出现在一个索引上,就像下面的数组一样。我在1和2索引中有相同的日期,所以结果数组应该像我的ewault
数组,这样属于同一日期的数据会显示在同一索引上。我该怎么做?
我的阵列:
Array
(
[0] => Array
(
[pkMessageID] => 6
[fkPostID] => 4
[messageSenderID] => 2
[messageRecieverID] => 19
[messageBody] => Nice
[messageStatus] => 1
[DateOnly] => 2015-07-07
[messageDateAdded] => 2015-07-07 16:20:58
)
[1] => Array
(
[pkMessageID] => 5
[fkPostID] => 4
[messageSenderID] => 19
[messageRecieverID] => 2
[messageBody] => Hi I am good how r u
[messageStatus] => 1
[DateOnly] => 2015-07-06
[messageDateAdded] => 2015-07-06 16:14:05
)
[2] => Array
(
[pkMessageID] => 4
[fkPostID] => 4
[messageSenderID] => 2
[messageRecieverID] => 19
[messageBody] => Hello akhilesh how r u
[messageStatus] => 1
[DateOnly] => 2015-07-06
[messageDateAdded] => 2015-07-06 16:12:22
)
)
但是,结果数组应该是:
Array
(
[0] => Array
(
[pkMessageID] => 6
[fkPostID] => 4
[messageSenderID] => 2
[messageRecieverID] => 19
[messageBody] => Nice
[messageStatus] => 1
[DateOnly] => 2015-07-07
[messageDateAdded] => 2015-07-07 16:20:58
)
[1] => Array
(
[0] => Array
(
[pkMessageID] => 5
[fkPostID] => 4
[messageSenderID] => 19
[messageRecieverID] => 2
[messageBody] => Hi I am good how r u
[messageStatus] => 1
[DateOnly] => 2015-07-06
[messageDateAdded] => 2015-07-06 16:14:05
)
[1] => Array
(
[pkMessageID] => 4
[fkPostID] => 4
[messageSenderID] => 2
[messageRecieverID] => 19
[messageBody] => Hello akhilesh how r u
[messageStatus] => 1
[DateOnly] => 2015-07-06
[messageDateAdded] => 2015-07-06 16:12:22
)
)
)
这可以使用以下方法完成:
$out = array();
foreach($input as $data)
{
if( ! is_array($out[$data['DateOnly']])){
$out[$data['DateOnly']] = array();
}
$out[$data['DateOnly']][] = $data;
}
我还没有代码,但我希望你能明白。只需将日期用作数组中的索引即可。因此,结果将沿着。
[2015-7-6] => Array ( [0] => Array( DateOnly => 2015-7-6, ..))
[2015-7-7] => Array ( [0] => Array( DateOnly => 2015-7-7, .. ), [1] => Array(DateOnly => 2015-7-7 , .. ))