再版アドレス:
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);
コードをコピー
|