已知下列数组
Array(
[0] => Array
(
[id] => 1
[title] => 麦当劳可乐杯回归,为你的夏天上色
[obdate] => 1562083500
)
[1] => Array
(
[id] => 4
[title] => 京东奢侈品电商平台 TOPLIFE 本月将正式关闭服务
[obdate] => 1562083200
)
[2] => Array
(
[id] => 2
[title] => 苹果等 200 家企业呼吁美最高法院维护非二元性别劳工权益
[obdate] => 1561996800
)
[3] => Array
(
[id] => 3
[title] => 百度委任符绩勋出任公司董事,陆奇将离任
[obdate] => 1561824000
)
)
想转变成
Array(
[7 月 3 日]=>Array(
[0] => Array
(
[id] => 1
[title] => 麦当劳可乐杯回归,为你的夏天上色
[obdate] => 1562083500
)
[1] => Array
(
[id] => 4
[title] => 京东奢侈品电商平台 TOPLIFE 本月将正式关闭服务
[obdate] => 1562083200
)
)
[7 月 2 日]=>Array(
[0] => Array
(
[id] => 2
[title] => 苹果等 200 家企业呼吁美最高法院维护非二元性别劳工权益
[obdate] => 1561996800
)
)
[6 月 30 日]=>Array(
[0] => Array
(
[id] => 3
[title] => 百度委任符绩勋出任公司董事,陆奇将离任
[obdate] => 1561824000
)
)
)
需求就是做成多维数组,按照日期(天)来倒序排列,请问应该怎么写?
1
zeroremind 2019-07-08 15:11:38 +08:00
foreach
|
2
jamfer OP @zeroremind 想了半天也没想到具体应该怎么写...
|
3
frozenway 2019-07-08 15:27:56 +08:00 1
```
$tmp = []; foreach($arr as $row){ $tmp[date('m 月 d 日', $row['obdate'])][] = $row; } ksort($tmp); print_r($tmp); ``` |
4
imdong 2019-07-08 15:29:40 +08:00
需要两次循环;
第一次循环 foreach 把 同一天的分组 第二次循环 排序(可以用自带的回调排序进行) |
6
qa2080639 2019-07-08 15:42:57 +08:00
athari/yalinqo 这个库就是专门解决这种业务需求的( a LINQ-to-objects library for PHP)
|