當前位置:首頁 > PHP教程 > php數組 > 列表

PHP實現數組根據某個單元字段排序操作的教程

發布:smiling 來源: PHP粉絲網  添加日期:2018-11-15 09:50:10 瀏覽: 評論:0 

本文實例講述了PHP實現數組根據某個單元字段排序操作。分享給大家供大家參考,具體如下:

如題,給出一個PHP數組,數組結構如下:

  1. $arr = array
  2.   array
  3.     'name'=>'sadas'
  4.     'norder'=>1 
  5.   ), 
  6.   array
  7.     'name'=>'sadas'
  8.     'norder'=>11 
  9.   ), 
  10.   array
  11.     'name'=>'sadas'
  12.     'norder'=>123 
  13.   ), 
  14.   array
  15.     'name'=>'sadas'
  16.     'norder'=>11 
  17.   ) 
  18. ); 

需要是需要按照norder從大到小的順序,重新排列$arr數組的順序。

可以使用array_multisort函數來幫助排序:

  1. function p($arr){ 
  2.   echo "<pre>"
  3.   print_r($arr); 
  4.   echo "</pre>"
  5. $arr = array
  6.   array
  7.     'name'=>'sadas'
  8.     'norder'=>1 
  9.   ), 
  10.   array
  11.     'name'=>'sadas'
  12.     'norder'=>11 
  13.   ), 
  14.   array
  15.     'name'=>'sadas'
  16.     'norder'=>123 
  17.   ), 
  18.   array
  19.     'name'=>'sadas'
  20.     'norder'=>11 
  21.   ) 
  22. ); 
  23. $flag = array(); 
  24. foreach($arr as $v){ 
  25.   $flag[] = $v['norder']; 
  26. array_multisort($flag, SORT_DESC, $arr); 
  27. p($arr); 

運行結果:

  1. Array 
  2.     [0] => Array 
  3.         ( 
  4.             [name] => sadas 
  5.             [norder] => 123 
  6.         ) 
  7.     [1] => Array 
  8.         ( 
  9.             [name] => sadas 
  10.             [norder] => 11 
  11.         ) 
  12.     [2] => Array 
  13.         ( 
  14.             [name] => sadas 
  15.             [norder] => 11 
  16.         ) 
  17.     [3] => Array 
  18.         ( 
  19.             [name] => sadas 
  20.             [norder] => 1 
  21.         ) 

Tags: PHP數組 單元字段排序

分享到:

福利彩票25选5开奖结果