/**
* 二维数组根据某个字段排序
* @param array $array 要排序的数组
* @param string $keys 要排序的键字段
* @param mixed $sort 排序类型 SORT_ASC SORT_DESC
* @return array 排序后的数组
*/
public function arraySort($array, $keys, $sort=SORT_DESC) {
$keysValue = [];
foreach ($array as $k => $v) {
$keysValue[$k] = $v[$keys];
}
array_multisort($keysValue, $sort, $array);
return $array;
}
/**
* 二维数组根据某2个字段排序
* @param array $array 要排序的数组
* @param string $f1 要排序的键字段1
* @param string $f2 要排序的键字段2
* @param mixed $sort 排序类型 SORT_ASC SORT_DESC
* @return array 排序后的数组
*/
public function arraySort2($array, $f1, $f2, $sort=SORT_ASC){
$f1Arr = $f2Arr = [];
foreach ($array as $key => $val ){
$f1Arr[$key] = $val[$f1];
$f2Arr[$key] = $val[$f2];
}
array_multisort($f1Arr, $sort, $f2Arr, $sort, $array);
return $array;
}
// 调用
$ret = $this->arraySort2($ret, 'abbreviation', 'name');
php二维数组根据某个或某几个字段排序
于 2022-02-21 19:32:54 首次发布