关于php利用数组中某个字段进行排序

工做中用到了一个相关的问题,搜索了百度有好多种方法,可是不一样方法对应的函数不一样,试了几个发现仍是下面这个比较好用:数组

array_multisort($sortarray,SortRank,$sortlist)函数

 

$sortarray是用来存储排序字段的数组,SortRank是排序条件,有如下两种:spa

1.SORT_ASC - 默认,按升序排列。(A-Z)排序

2.SORT_DESC - 按降序排列。(Z-A)变量

 

$sortlist是须要排序的数组,以遇到的问题为例:百度

 list = [{"name": "首页","sort": 1},{"name": "企业管理","sort": 2},{"name": "订单管理","sort": 3}]foreach

foreach($list as $list2){
$sort[]=$list2["sort"];
}
array_multisort($sort,SORT_ASC,$list);

PS:第一次用这个方法的时候觉得须要 $new_list = array_multisort($sort,SORT_ASC,$list),




其实不须要,这个函数排序事后,直接使用list便可,不然强行取变量取出来的可能只有true或者false
PS +1 :这个方法其实比较适用于二维数组,维数增多之后用起来是个灾难。。。
相关文章
相关标签/搜索