2
我有一個多維數組,基本上包含一個子陣列每年的維度排序多維數組。因此,舉例來說,如果我有三個一年的數據,它可能是這樣的:用在array_multisort,在那裏你不知道數組
$data[0] = Array(0,1,2,3,4,5,6,7);
$data[1] = Array(6,5,4,3,6,7,8,9);
$data[2] = Array(1,4,2,5,7,3,1,4);
現在我希望能夠到的年份之一的基礎上的數組進行排序。例如,我可能要基於第二年進行排序,在這種情況下他們會所有排序的基礎上$重新排序的數據[1]。
我可以使用array_multisort做到這一點很容易:
array_multisort($data[1],SORT_ASC,$data[0],$data[2]);
這很好,但我不知道如何將數據的多年會有。我想僅指定參數的正確數目的一些方式,但我不知道該怎麼做,在PHP中,除非我只是要有一個if語句爲每一個可能若干年後,這似乎令人難以置信的痛苦:
if ($num_years == 1)
{
array_multisort($data[$which_year],SORT_ASC);
}
else if ($num_years == 2)
{
array_multisort($data[$which_year],SORT_ASC,$data[0],$data[1]); // this does work, interestingly, in spite of the repetition...
}
任何人都知道一個更好的辦法?
啊!涼。這聽起來像我所需要的。我會嘗試一下。 – Ben 2009-05-25 21:00:30