[英]Sort a multi dimensional array with dates as keys in PHP
我已经将日期转换为Unix时间戳数组,如下所示。
Array
(
[ONE] => Array
(
[1460581200] =>
[1460667600] =>
[0] =>
)
[TWO] => Array
(
[1465506000] =>
[1468184400] =>
[0] =>
[1470949200] =>
)
)
我想将日期安排在此数组内,以便它们可以降序排列而不会影响主数组键。
我也想将[0](表示日期不存在)放在最前面。
试试这个代码:
<?php
$array = Array
(
'ONE' => Array
(
'1460581200' => 'aaa',
'1460667600' => 'bbb',
'0' => 'ccc',
),
'TWO' => Array
(
'1465506000' => 'ddd',
'1468184400' => 'eee',
'0' => 'fff',
'1470949200' => 'ggg',
)
);
function sortByKeys($array)
{
$result = array();
if(isset($array[0]))
{
$result[0] = $array[0];
unset($array[0]);
}
krsort($array);
return $result + $array;
}
$result = array_map('sortByKeys',$array);
print_r($result);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.