国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

PHP二維數組怎么按某個字段排序?

2024-09-04 11:46:14
字體:
來源:轉載
供稿:網友

先不說別的我們直接看二維數組按某個字段排序實例,代碼如下:

  1. /**    
  2.  * @author yebihai 
  3.  * @desc 按二維數組的某一個字段進行升降排序    
  4.  * @data    
  5.  *      $testData = array(    
  6.             array('price'=>19),    
  7.             array('price'=>121),    
  8.             array('price'=>115),    
  9.             array('price'=>113),    
  10.             array('price'=>112)    
  11.         );    
  12.  */      
  13. class sortClass{      
  14.     //升序      
  15.     function sortArrayAsc($preData,$sortType='price'){      
  16.         $sortData = array();      
  17.         foreach ($preData as $key_i => $value_i){      
  18.             $price_i = $value_i[$sortType];      
  19.             $min_key = '';      
  20.             $sort_total = count($sortData);      
  21.             foreach ($sortData as $key_j => $value_j){      
  22.                 if($price_i<$value_j[$sortType]){      
  23.                     $min_key = $key_j+1;      
  24.                     break;      
  25.                 }      
  26.             }      
  27.             if(empty($min_key)){    
  28.                 array_push($sortData, $value_i);       
  29.             }else {      
  30.                 $sortData1 = array_slice($sortData, 0,$min_key-1);       
  31.                 array_push($sortData1, $value_i);      
  32.                 if(($min_key-1)<$sort_total){      
  33.                     $sortData2 = array_slice($sortData, $min_key-1);       
  34.                     foreach ($sortData2 as $value){      
  35.                         array_push($sortData1, $value);      
  36.                     }      
  37.                 }      
  38.                 $sortData = $sortData1;      
  39.         }      
  40.         }      
  41.         return $sortData;      
  42.     }      
  43.     //降序      
  44.     function sortArrayDesc($preData,$sortType='price'){      
  45.         $sortData = array();      
  46.         foreach ($preData as $key_i => $value_i){      
  47.             $price_i = $value_i[$sortType];      
  48.             $min_key = '';      
  49.             $sort_total = count($sortData);      
  50.             foreach ($sortData as $key_j => $value_j){      
  51.                 if($price_i>$value_j[$sortType]){      
  52.                     $min_key = $key_j+1;      
  53.                     break;      
  54.                 }      
  55.             }      
  56.             if(empty($min_key)){      
  57.                 array_push($sortData, $value_i);       
  58.             }else {      
  59.                 $sortData1 = array_slice($sortData, 0,$min_key-1);       
  60.                 array_push($sortData1, $value_i);      
  61.                 if(($min_key-1)<$sort_total){      
  62.                     $sortData2 = array_slice($sortData, $min_key-1);       
  63.                     foreach ($sortData2 as $value){      
  64.                         array_push($sortData1, $value);      
  65.                     }      
  66.                 }      
  67.                 $sortData = $sortData1;      
  68.             }      
  69.         }      
  70.         return $sortData;      
  71.     }      
  72. }  

后面整理一些關于數組排序的函數,數據排序函數有:

•sort() 函數用于對數組單元從低到高進行排序。

•rsort() 函數用于對數組單元從高到低進行排序。

•asort() 函數用于對數組單元從低到高進行排序并保持索引關系。

•arsort() 函數用于對數組單元從高到低進行排序并保持索引關系。

•ksort() 函數用于對數組單元按照鍵名從低到高進行排序。

•krsort() 函數用于對數組單元按照鍵名從高到低進行排序。

•array_multisort() 函數對多個數組或多維數組進行排序

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 株洲县| 海晏县| 大化| 汉中市| 陆川县| 葫芦岛市| 崇文区| 额尔古纳市| 安义县| 武穴市| 买车| 安吉县| 六盘水市| 临颍县| 资兴市| 徐州市| 环江| 昌图县| 微博| 大庆市| 吴川市| 富川| 昆山市| 上林县| 汉沽区| 玉屏| 裕民县| 阿勒泰市| 怀柔区| 永昌县| 古浪县| 临泉县| 桦甸市| 雷山县| 青阳县| 犍为县| 叶城县| 集贤县| 正蓝旗| 苏尼特右旗| 团风县|