排序多維數組欲通過它的列中的一個進行排序的2D陣列... forexample:由2列
$a = array(
'user4' => array('name' => 'u4', 'payment' => 1000, 'time' => 5000),
'user2' => array('name' => 'u2', 'payment' => 2000, 'time' => 5000),
'user3' => array('name' => 'u3', 'payment' => 2000, 'time' => 3000),
);
我想通過payment
(DESC
)和time
(ASC
對它進行排序, )。 所以數組排序應該是這樣的:
$a = array(
'user3' => array('name' => 'u3', 'payment' => 2000, 'time' => 3000),
'user2' => array('name' => 'u2', 'payment' => 2000, 'time' => 5000),
'user4' => array('name' => 'u4', 'payment' => 1000, 'time' => 5000),
);
怎麼辦呢? 謝謝,
我已經找到了解決辦法:
foreach ($a as $key => $row) {
$payment[$key] = $row['payment'];
$time[$key] = $row['time'];
}
array_multisort($payment, SORT_DESC, $time, SORT_ASC, $a);
來源:http://php.net/manual/en/function.array-multisort.php
然後添加它作爲答案,並儘快接受它。 – 2012-04-25 12:50:31