array_multisort()
是 PHP 中的一個內(nèi)置函數(shù),它可以對多個數(shù)組或多維數(shù)組進行排序
$data = [
['id' => 1, 'name' => 'Alice', 'age' => 30],
['id' => 2, 'name' => 'Bob', 'age' => 25],
['id' => 3, 'name' => 'Charlie', 'age' => 30],
];
// 提取需要排序的列
$ages = array_column($data, 'age');
$names = array_column($data, 'name');
// 使用 array_multisort() 對數(shù)據(jù)進行排序
array_multisort($ages, SORT_ASC, $names, SORT_ASC, $data);
print_r($data);
輸出結果:
Array
(
[0] => Array
(
[id] => 2
[name] => Bob
[age] => 25
)
[1] => Array
(
[id] => 1
[name] => Alice
[age] => 30
)
[2] => Array
(
[id] => 3
[name] => Charlie
[age] => 30
)
)
$strings = ['apple', 'banana', 'kiwi', 'grape'];
// 獲取字符串長度作為排序依據(jù)
$lengths = array_map('strlen', $strings);
// 使用 array_multisort() 對字符串數(shù)組進行排序
array_multisort($lengths, SORT_ASC, $strings);
print_r($strings);
輸出結果:
Array
(
[0] => kiwi
[1] => apple
[2] => grape
[3] => banana
)
通過這些示例,你可以了解到 array_multisort()
在處理復雜數(shù)據(jù)結構時的實際應用。這個函數(shù)可以讓你根據(jù)多個條件對數(shù)組進行排序,從而更好地組織和處理數(shù)據(jù)。