如何对具有最高分数的数组进行排序?
示例:
$sale = array();
Array
(
[UserA] => Array
(
[unsuccessful] => 0
[Points] => 31
[procesing] => 4
)
[UserB] => Array
(
[unsuccessful] => 4
[Points] => 200
[procesing] => 1
)
[UserC] => Array
(
[unsuccessful] => 3
[Points] => 150
[procesing] => 55
)
)
按点排序,它应按顺序排列:UserB,UserC,UserA
答案 0 :(得分:7)
uasort($array, function($a, $b) {
return $b['Points'] - $a['Points'];
});
uasort()
和usort()
函数采用回调,该回调应准确指定使一个项目大于或小于另一个项目的内容。如果此函数返回0
,则项目相等。如果它返回正数,则第二项大于第一项。否则,第一项大于第二项。
uasort()
和usort()
之间的区别在于uasort()
也保留了密钥,而usort()
却没有。另请查看the comparison of array sorting functions以了解有关排序数组的所有其他方法。
答案 1 :(得分:1)
您可以使用php函数usort
提供自己的自定义排序逻辑。见http://www.php.net/manual/en/function.usort.php
答案 2 :(得分:1)