Rumah  >  Artikel  >  pembangunan bahagian belakang  >  对二维数组指定项排序

对二维数组指定项排序

WBOY
WBOYasal
2016-07-25 09:02:261051semak imbas

  1. /*
  2. $array_name:传入的数组;
  3. $row_id:数组想排序的项;
  4. $order_type:排序的方式,ASC或者DESC;
  5. */
  6. function array_sort($array_name,$row_id,$order_type){
  7. $array_temp=array();
  8. foreach($array_name as $key=>$value){//循环一层;
  9. $array_temp[$key]=$value[$row_id];//新建一个一维的数组,索引值用二维数组的索引值;值为二维数组要比较的项目的值;
  10. }
  11. if($order_type==="ASC"){
  12. asort($array_temp);
  13. }else{
  14. arsort($array_temp);
  15. }
  16. $result_array=array();
  17. foreach($array_temp as $key=>$value){//对进行筛选过的数组遍历;
  18. $result_array[]=$array_name[$key];//新建一个结果数组,将原来传入的数组改变键值顺序后赋值给结果数组(原来数组不变);
  19. }
  20. return $result_array;
  21. }
  22. //以下是测试
  23. $arr=array(array('num'=>7,'value'=>4),
  24. array('num'=>3,'value'=>45),
  25. array('num'=>38,'value'=>27));
  26. $sortarr=array_sort($arr,'value','ASC');
  27. print_r($sortarr);
  28. ?>
复制代码


Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn