PHP支持对二维数组进行排序,并且可以指定二维数组中的字段进行排序,
下面是一个例子,使用usort对一个二维数组按照指定字段进行排序:
$array = [
['name' => 'John', 'age' => 25],
['name' => 'Jane', 'age' => 30],
['name' => 'Mike', 'age' => 20]
];
// 按照age字段进行升序排序
usort($array, function($a, $b) {
return $a['age'] - $b['age'];
});
// 打印排序结果
foreach ($array as $item) {
echo $item['name'] . ' - ' . $item['age'] . "\n";
}
// 输出结果:
// Mike - 20
// John - 25
// Jane - 30
我们使用usort()
函数对二维数组$array
按照age
字段进行排序。我们传递了一个匿名函数作为比较函数,用来比较两个数组元素的age
值。这个比较函数返回一个小于、等于或大于0的值,用来指示数组元素的顺序。通过这种方式,我们可以自定义排序的规则。