// PHP一维数组的排序可以用sort(),asort(),arsort()等函数,但是PHP二维数组的排序需要自定义
function array_sort($arr,$keys,$type='asc'){
$keysvalue = $new_array = array();
foreach ($arr as $k=>$v){
$keysvalue[$k] = $v[$keys];
}
if($type == 'asc'){
//asort函数, 对数组进行排序并保持索引关系,
//参照官方说明:http://cn2.php.net/manual/zh/function.asort.php
asort($keysvalue);
}else{
//arsort函数, 对数组进行逆向排序并保持索引关系,
//参照官方说明:http://cn2.php.net/manual/zh/function.arsort.php
arsort($keysvalue);
}
reset($keysvalue);
foreach ($keysvalue as $k=>$v){
$new_array[$k] = $arr[$k];
}
return $new_array;
}
$array = array(
array('name'=>'手机','brand'=>'诺基亚','price'=>1050),
array('name'=>'笔记本电脑','brand'=>'lenovo','price'=>4300),
array('name'=>'液晶电视','brand'=>'索尼','price'=>6299)
);
// array_sort 结果按照价格排序
$ShoppingList = array_sort($array,'price');
echo '
'; print_r($ShoppingList); exit;
// 结果如下
Array
(
[0] => Array
(
[name] => 手机
[brand] => 诺基亚
[price] => 1050
)
[1] => Array
(
[name] => 笔记本电脑
[brand] => lenovo
[price] => 4300
)
[2] => Array
(
[name] => 液晶电视
[brand] => 索尼
[price] => 6299
)
)
转载时请注明出处及相应链接,本文永久地址:https://blog.yayuanzi.com/438.html
微信打赏
支付宝打赏
感谢您对作者surfin的打赏,我们会更加努力! 如果您想成为作者,请点我