2012-09-12 364 views
0

我在PHP具有2D陣列,其保持時間:通過二維陣列排序 - PHP

陣列的
$cal[$year][$month] = $event; 

輸出是:

Array ([2012] => Array ([6] => 10.92 [11] => 16.38 [8] => 1.3 [9] => 16.96) 

我想對數組進行排序按年份和月份。我該怎麼做呢?

謝謝!

+0

你試過sort()函數嗎? – StasGrin

+0

檢查一下,http://php.net/manual/en/function.array-multisort.php – FirmView

+0

看看array_multisort函數 –

回答

0

根據您的以下數組:

$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()krsort()你需要混合排序,比如幾年上升和幾個月下降。