array_multisort()
是一個內置的 PHP 函數,它可以對多個數組或多維數組進行排序
<?php
// 示例數組
$data = [
['volume' => 67, 'edition' => 2],
['volume' => 86, 'edition' => 1],
['volume' => 85, 'edition' => 6],
['volume' => 98, 'edition' => 2],
['volume' => 86, 'edition' => 6]
];
// 提取需要排序的列
foreach ($data as $key => $row) {
$volume[$key] = $row['volume'];
$edition[$key] = $row['edition'];
}
// 對 volume 和 edition 列進行排序
array_multisort($volume, SORT_DESC, $edition, SORT_ASC, $data);
// 打印排序后的數組
print_r($data);
?>
在這個示例中,我們首先創建了一個包含多個關聯子數組的 $data
數組。然后,我們使用 foreach
循環遍歷 $data
數組,并將 volume
和 edition
列的值分別存儲到 $volume
和 $edition
數組中。
接下來,我們使用 array_multisort()
函數對 $volume
和 $edition
數組進行排序。我們傳遞了五個參數:
$volume
- 第一個排序的數組。SORT_DESC
- 指定按降序對 $volume
數組進行排序。$edition
- 第二個排序的數組。SORT_ASC
- 指定按升序對 $edition
數組進行排序。$data
- 要根據前面指定的排序規則對其進行排序的原始數組。最后,我們使用 print_r()
函數打印排序后的 $data
數組。