PHPの2次元配列を降順でソートするには?
PHP の usort() 関数を使用して 2 次元配列を降順に並べ替えるには、カスタムの比較関数を作成します。
以下是一个示例代码:
// 自定义比较函数
function compare($a, $b) {
// 按第一个元素降序排列
if ($a[0] > $b[0]) {
return -1;
} elseif ($a[0] < $b[0]) {
return 1;
} else {
return 0;
}
}
// 二维数组
$array = array(
array(5, 'apple'),
array(3, 'banana'),
array(8, 'orange'),
array(2, 'grape')
);
// 使用usort()函数对二维数组进行排序
usort($array, 'compare');
// 输出排序后的数组
print_r($array);
以下のコードを実行すると、次の結果が表示されます。
Array
(
[0] => Array
(
[0] => 8
[1] => orange
)
[1] => Array
(
[0] => 5
[1] => apple
)
[2] => Array
(
[0] => 3
[1] => banana
)
[3] => Array
(
[0] => 2
[1] => grape
)
)
一次元目の要素で降順にソートされた二次元配列が返されます。