通过二维数组排序-PHP

通过二维数组排序-PHP,php,arrays,sorting,Php,Arrays,Sorting,我有一个php中的2D数组,其中包含日期: $cal[$year][$month] = $event; 阵列的输出为: Array ( [2012] => Array ( [6] => 10.92 [11] => 16.38 [8] => 1.3 [9] => 16.96 ) 我想按年份和月份对数组进行排序。我该怎么做 谢谢大家! 您应该查看array_multisort函数,您可以在此处找到信息: 第二个示例是根据以下数组查找的内容: $cal[$yea

我有一个php中的2D数组,其中包含日期:

$cal[$year][$month] = $event; 
阵列的输出为:

Array ( [2012] => Array ( [6] => 10.92 [11] => 16.38 [8] => 1.3 [9] => 16.96 ) 
我想按年份和月份对数组进行排序。我该怎么做


谢谢大家!

您应该查看array_multisort函数,您可以在此处找到信息:


第二个示例是根据以下数组查找的内容:

$cal[$year][$month] = $event;
考虑到
$year
$month
都是数字(如果不是,只需将它们转换)

对于按升序订购年份和月份,请执行以下操作:

ksort($cal); //sort years
foreach($cal as &$arr) {
   ksort($arr); //sort months
}
krsort($cal); //sort years
foreach($cal as &$arr) {
   krsort($arr); //sort months
}
如果要按降序排列,请执行以下操作:

ksort($cal); //sort years
foreach($cal as &$arr) {
   ksort($arr); //sort months
}
krsort($cal); //sort years
foreach($cal as &$arr) {
   krsort($arr); //sort months
}

如果您想要混合排序,如年份递增和月份递减,则可以在这两个示例中交换
ksort()
krsort()

您是否尝试过sort()函数?检查此项,查看array\u multisort函数