QQ咨询 官方微信

添加微信好友

官方小程序

百度小程序

微信小程序

头条小程序

关于我们

PHP基础

PHP实现对多维数组按照某个键值排序的两种解决方法

 admin  2018-04-13 09:20:53
实现对多维数组按照某个键值排序的两种解决方法(array_multisort和array_sort):

第一种:
array_multisort()函数对多个数组或多维数组进行排序。
  1. //对数组$hotcat按照count键值大小降序进行排序;    
  2. $hotcat =array(   
  3.  array('1501'=>array('catid'=>'1546','catname'=>'数组排序 一级','count'=>'588')),   
  4.  array('1501'=>array('catid'=>'1546','catname'=>'数组排序二级','count'=>'588')),   
  5.  array('1501'=>array('catid'=>'1546','catname'=>'数组排序 三级','count'=>'588'))   
  6. );   
  7.  //提取列数组;   
  8. foreach ($hotcat as $key => $val) {   
  9.   $tmp[$key] = $row['username'];   
  10. }   
  11. array_multisort($tmp,SORT_DESC,$hotcat);此处对数组进行降序排列;SORT_DESC按降序排列   

第二种:
自定义方法array_sort()进行排序
  1. function array_sort($array,$keys,$type='asc'){   
  2. //$array为要排序的数组,$keys为要用来排序的键名,$type默认为升序排序   
  3. $keysvalue = $new_array = array();   
  4. foreach ($array as $k=>$v){   
  5. $keysvalue[$k] = $v[$keys];   
  6. }   
  7. if($type == 'asc'){   
  8. asort($keysvalue);   
  9. }else{   
  10. arsort($keysvalue);   
  11. }   
  12. reset($keysvalue);   
  13. foreach ($keysvalue as $k=>$v){   
  14. $new_array[$k] = $array[$k];   
  15. }   
  16. return $new_array;   
  17. }   
  18. $hot_cat = array_sort($hot_cat,'count','desc'); //此处对数组进行降序排列  
  19.  

¥ 打赏
×
如果您觉得文章帮助了您就打赏一下吧
非常感谢你的打赏,我们将继续分享更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏

本文《PHP实现对多维数组按照某个键值排序的两种解决方法》发布于石头博客文章,作者:admin,如若转载,请注明出处:https://www.pweb123.com/html/php/735.html,否则禁止转载,谢谢配合!

文章点评

我来说两句 已有0条评论
点击图片更换

添加微信好友

添加微信好友

微信小程序

百度小程序