我有这个网站使用数组,然后我有这个功能,使用asort
对这些数组进行排序。它看起来像这样:
function aasort (&$array, $key) {
$sorter=array();
$ret=array();
reset($array);
foreach ($array as $ii => $va) {
$sorter[$ii]=$va[$key];
}
asort($sorter);
foreach ($sorter as $ii => $va) {
$ret[$ii]=$array[$ii];
}
$array=$ret;
}
这个算法从1-10对数组进行排序,但我需要它从10-1到降序排序。我尝试过使用rsort
没有运气,我也试过array_reverse
而没有运气。我不知道我是否错了?或者..至少我只需要算法来降序排序。任何想法,建议或建议都表示赞赏。谢谢!
答案 0 :(得分:2)
如文档所述,尝试usort
定义的排序功能。
http://www.php.net/manual/en/function.usort.php
function sortSomething($a, $b){
if ($a < $b){
return -1;
}
else if ($a > $b){
return 1;
}
else{
return 0;
}
};
// Now sort the array using the comparison function
usort($array, 'sortSomething');
这会以正常方式对元素进行排序 - 只需切换比较运算符,您就可以进行反向排序。