PHP two-dimensional array sorting function, the default natural sort, that is sort. Here you can specify a number of methods to sort by a value in a two-dimensional array, depending on the program note below.
Copy CodeThe code is as follows:
/**
* @function two-dimensional array natural sorting
* @author www.phpernote.com
* @param array $array needs to be sorted (two-dimensional)
* @param string key depends on which key to sort
* @param String Order Sort method (Sort_asc,sort_desc)
* @param String type sorting method (sort_regular,sort_numeric,sort_string)
* @return Array sorted array.
*/
function Phpsortarray ($array, $key, er = "Sort_asc", $type = "Sort_regular") {
if (!is_array ($array) | | Empty ($ $array)) {
return $array;
}
$ArgCount =func_num_args ();//Returns the number of arguments passed to the currently defined function
for ($I =1; $I < $ArgCount; $I + +) {
$Arg =func_get_arg ($I);
if (!eregi ("SORT", $Arg)) {
$KeyNameList []= $Arg;
$SortRule []= ' $ '. $Arg;
}else{
$SortRule []= $Arg;
}
}
foreach ($array as $Key = = $Info) {
foreach ($KeyNameList as $KeyName) {
${$KeyName}[$Key]= $Info [$KeyName];
}
}
$EvalString = ' Array_multisort ('. Join (",", $SortRule). ', $array);
eval ($EvalString);
return $array;
}