VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > PHP >
  • PHP中数组的分组排序实例

这篇文章主要介绍了PHP中数组的分组排序实例,对PHP数组分组排序的方法,需要的朋友可以参考下。

PHP的数组,数组中的内容大致如下:

  1. $list = array
  2.     array(2,3,5), 
  3.     array(2,5,24), 
  4.     array(3,8,6), 
  5.     array(3,2,10), 
  6.     array(4,7,20), 
  7.     array(4,1,15), 
  8.     array(6,4,10), 
  9.     array(7,9,20), 
  10.     ); 

为了方便表达,我把3列数字分别称为,ABC三列

需求:默认以A列排序为主,如果A列相同则以C列倒序排列相同的元素。B列其实没有参与排序,但是在实际运用中有用,所以我也写出来了。

方法一:

  1. $a = $c = array(); 
  2. foreach($list as $val){ 
  3.     $a[] = $val[0]; //a列 
  4.     $c[] = $val[2]; //c列 
  5. //安装a列升序,然后安装b列降序 , 类似sql,orderby a asc,b desc 
  6. array_multisort($a,SORT_ASC , $c, SORT_DESC, $list); 
  7. print_r($list); 

方法二:

  1. for($j=0;$j<count($list);$j++) { 
  2.     for($i=count($list)-1;$i>$j;$i--){ 
  3.         if($list[$i][0] == $list[$i-1][0] && $list[$i][2] > $list[$i-1][2]) 
  4.             list($list[$i],$list[$i-1]) = array($list[$i-1],$list[$i]); 
  5.     } 
  6.  



出处:http://www.phpfensi.com/php/20210131/13604.html


相关教程