[英]Need to sort a group of array according to specific key value php
I need help in sorting an array which has different groups with a same value for every group . 在排序具有不同组且每个组具有相同值的数组时,我需要帮助。 i want to sort the group in descending order.
我想按降序对组进行排序。 please have a look below :
请在下面看看:
Array
(
[0] => Array
(
[0] => Array
(
[name] => rose
[price] => 3
)
[1] => Array
(
[name] => daisy
[price] => 3
)
[2] => Array
(
[name] => orchid
[price] => 3
)
)
[1] => Array
(
[0] => Array
(
[name] => rose
[price] => 1
)
[1] => Array
(
[name] => daisy
[price] => 1
)
[2] => Array
(
[name] => orchid
[price] => 1
)
)
[2] => Array
(
[0] => Array
(
[name] => rose
[price] => 2
)
[1] => Array
(
[name] => daisy
[price] => 2
)
[2] => Array
(
[name] => orchid
[price] => 2
)
)
)
And i want it to be sorted like this : 我希望它可以这样排序:
Array
(
[0] => Array
(
[0] => Array
(
[name] => rose
[price] => 3
)
[1] => Array
(
[name] => daisy
[price] => 3
)
[2] => Array
(
[name] => orchid
[price] => 3
)
)
[1] => Array
(
[0] => Array
(
[name] => rose
[price] => 2
)
[1] => Array
(
[name] => daisy
[price] => 2
)
[2] => Array
(
[name] => orchid
[price] => 2
)
)
[2] => Array
(
[0] => Array
(
[name] => rose
[price] => 1
)
[1] => Array
(
[name] => daisy
[price] => 1
)
[2] => Array
(
[name] => orchid
[price] => 1
)
)
)
Note i have a large array of group. 注意我有很多的团体。 But this is just a part from that to get an idea .
但这只是获得想法的一部分。
It is understood from above that i want the above array to be sorted according to price key in descending order . 从上面可以理解,我希望上面的数组根据价格键以降序排序。
Thanks in Advance! 提前致谢!
give it a try. 试试看。
uasort($array, function ($a, $b) {
$price_a = array_values($a)[0]['price'];
$price_b = array_values($b)[0]['price'];
return $price_b - $price_a;
});
Note: if group is empty than there will be a error. 注意:如果组为空,则将出现错误。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.