【发布时间】:2015-11-16 00:21:36
【问题描述】:
我有一个多维数组,用于存储有关游戏中玩家的信息。它为每个玩家存储了一个数组,每个玩家都是一个信息数组。每个玩家中的一个值是一个分数数组。 我想按照总分从高到低的顺序将我的数据输出到表格中。
目前,输出没有特定的顺序。我知道获得总分的唯一方法是array_sum($allplayers[0][2]) 或类似的。如何对数组$allplayers 进行排序,以便当我循环遍历它以输出结果时,它将从最高的array_sum 开始并向下工作?
数组示例:
//I want to sort $Allplayers by sum of key [3]
$Allplayers ( [0] => Array (
[0] => Winning
[1] => 224
[4] => 0
[2] => Array ( [0] => 107 [1] => 114 [3] => 104 )
[3] => Array ( [0] => 107 [1] => 114 ) )
[1] => Array (
[0] => Losing
[1] => 225
[2] => Array ( [0] => 76 )
[3] => Array ( [0] => 76 )
[4] => 1 )
【问题讨论】:
-
将usort()与比较总和的回调一起使用
-
@MarkBaker 感谢您的链接。我以前做过一次,但并没有完全理解它。我现在在函数后面有这行代码
usort(array_sum($allplayers[][3]),"cmp");。我应该在第一个[]之间放什么?那是我不明白的。再次感谢 -
请您发布数组它会清除问题。
-
@siddhesh,当然,请参阅有问题的更新。谢谢
标签: php arrays sorting multidimensional-array