php 具有通用性二维数组排序算法函数
具有通用性二维数组排序算法函数 [代码片段(57行)]
<?php
//二维数组排序, $arr是数据,$keys是排序的健值,$order是排序规则,1是升序,0是降序
function array_sort($arr, $keys, $order=0) {
if (!is_array($arr)) {
return false;
}
$keysvalue = array();
foreach($arr as $key => $val) {
$keysvalue[$key] = $val[$keys];
}
if($order == 0){
asort($keysvalue);
}else {
arsort($keysvalue);
}
reset($keysvalue);
foreach($keysvalue as $key => $vals) {
$keysort[$key] = $key;
}
$new_array = array();
foreach($keysort as $key => $val) {
$new_array[$key] = $arr[$val];
}
return $new_array;
}
//eg
$arr = array('0'=>array('a'=>2,'b'=>4,'c'=>3),
'1'=>array('a'=>45,'b'=>3,'c'=>3),
'2'=>array('a'=>2,'b'=>7,'c'=>3),
);
$new_array = array_sort($arr,'a',0);
print_r($new_array);
//该片段来自于http://outofmemory.cn
精彩图集
精彩文章






