我试图找到一种基于多个第三级属性对此数组进行排序的方法。
所以,我想首先按 latency
排序顶级数组,然后按 load1minavg
排序,然后按的 packetloss
即可。
任何人都可以向我解释我将如何做到这一点?我已经查看了 usort
功能,似乎无法按照我需要的方式运行。我知道我觉得可以在这里使用的 array_multisort
功能,但我不能为我的生活找出如何有效地使用它。
非常感谢任何帮助。谢谢!
我想排序的数组示例(数组是动态的,值可能会改变)
$servers = [
[
'bnd' => [
'comp' => 'ifo',
'rate' => 5
],
'stat' => [
'load1minavg' => 15,
'latency' => 12,
'packetloss' => 8
]
],
[
'bnd' => [
'comp' => 'lto',
'rate' => 18
],
'stat' => [
'load1minavg' => 20,
'latency' => 96,
'packetloss' => 11
]
],
[
'bnd' => [
'comp' => 'lto',
'rate' => 13
],
'stat' => [
'load1minavg' => 5,
'latency' => 18,
'packetloss' => 31
]
]
];