我下面有这个关联数组
["12:00" => "Lunch", "07:00" => "Arrival", "07:15" => "Start Tour"]
我想按时间(键)升序打印如下
7:00 => Arrival
7:15 => Start Tour
12:00 => Lunch
到目前为止,我尝试过的内容如下
$arr = ["12:00" => "Lunch", "07:00" => "Arrival", "07:15" => "Start Tour"];
function timecomp($a,$b)
{
// Subtracting the UNIX timestamps from each other.
// Returns a negative number if $b is a date before $a,
// otherwise positive.
return strtotime($b[0])-strtotime($a[0]);
}
uasort($arr,'timecomp');
print_r($arr);
它打印出
Array
(
[07:15] => Start Tour
[07:00] => Arrival
[12:00] => Lunch
)
答案 0 :(得分:7)
只要您的时间字符串使用24小时制且前导零,您就可以使用ksort()
:
$a = ["12:00" => "Lunch", "07:00" => "Arrival", "07:15" => "Start Tour"];
ksort($a);
print_r($a);
结果:
Array
(
[07:00] => Arrival
[07:15] => Start Tour
[12:00] => Lunch
)