转载地址:
http://blog.qita.in/?post=468
-
//二维数组排序, $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);
复制代码
|