arrayorder.php

来自「一个多维数组的插入排序算法」· PHP 代码 · 共 35 行

PHP
35
字号
/**
* 对一个多维数组的某个字段进行排序
*
* @param array $array 待排序数组
* @param string $key 排序根据的字段
* @return array 子数组的字段
*/
function array_sort_by(&$array,$key,$sub){
$tmp = null;
$min = null;
$n = count($array);
for ($i=0;$i<=$n-1;$i++){
  $min = $i;
  if(isset($array[$i+1])){
   for($y=$i+1;$y<$n;$y++){
    if($array[$min][$key]>$array[$y][$key]){
     $min = $y;
    }
   }
   if($min!=$i){
    $tmp = $array[$i];
    $array[$i] = $array[$min];
    $array[$min] = $tmp;
    unset($tmp);
   }
  }
  if(isset($array[$i][$sub])) {
   $array[$i][$sub]=array_sort_by($array[$i][$sub],$key);
  }
}
unset($n);
unset($min);
return $array;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?