1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
<?php /* * 二维数组排序 * @param $arr 需要排序数据 * @param $field 需要排序字段 * @param $order 排序方式(asc|desc) */ function array_sort($arr, $field, $order="asc") { if (!is_array($arr)) return false; $keysvalue = array(); foreach($arr as $key => $val) { $keysvalue[$key] = $val[$field]; } if ($order == "asc") { asort($keysvalue); } else if ($order == "desc"){ arsort($keysvalue); } else {} reset($keysvalue); $new_array = array(); foreach($keysvalue as $key => $vals) { $new_array[$key] = $arr[$key]; } return $new_array; } $array = array( array("a"=>18,"b"=>26), array("a"=>25,"b"=>23), array("a"=>3,"b"=>26), array("a"=>44,"b"=>23), array("a"=>44,"b"=>2) ); //测试 print_r(array_sort($array,"b","asc")); |
如无特殊说明,文章均为本站原创,转载请注明出处
- 转载请注明来源:PHP 二维数组排序
- 本文永久链接地址:http://www.5k5c.com/blog/322