我在 php 中有一个包含日期的二维数组:
$cal[$year][$month] = $event;
数组的输出是:
Array ( [2012] => Array ( [6] => 10.92 [11] => 16.38 [8] => 1.3 [9] => 16.96 )
我想按年和月对数组进行排序。我该怎么做呢?
谢谢!
你应该看看 array_multisort 函数,你可以在这里找到信息:http: //php.net/manual/en/function.array-multisort.php
第二个例子是你要找的
根据您的以下数组:
$cal[$year][$month] = $event;
并考虑到$year
and$month
都是数字的(如果不是,只需转换它们)。
要按升序排序年份和月份,请执行以下操作:
ksort($cal); //sort years
foreach($cal as &$arr) {
ksort($arr); //sort months
}
如果您希望它按 DESCENDING 顺序排列,请执行以下操作:
krsort($cal); //sort years
foreach($cal as &$arr) {
krsort($arr); //sort months
}
如果你想要一个混合排序,你可以在这两个例子中互换ksort()
和,比如年升序和月降序。krsort()