这篇文章将为大家详细讲解有关使用PHP怎么将二维数组根据key进行排序,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
实现方法:
<?php /** * 二维数组排序 * @param array $arr 需要排序的二维数组 * @param string $keys 所根据排序的key * @param string $type 排序类型,desc、asc * @return array $new_array 排好序的结果 */ function array_sort($arr, $keys, $type = 'desc') { $key_value = $new_array = array(); foreach ($arr as $k => $v) { $key_value[$k] = $v[$keys]; } if ($type == 'asc') { asort($key_value); } else { arsort($key_value); } reset($key_value); foreach ($key_value as $k => $v) { $new_array[$k] = $arr[$k]; } return $new_array; } $arr = array( array( 'name' => 'a', 'sex' => 'm', 'sort' => 5 ), array( 'name' => 'c', 'sex' => 'm', 'sort' => 8 ), array( 'name' => 'g', 'sex' => 'm', 'sort' => 3 ), array( 'name' => 'e', 'sex' => 'w', 'sort' => 6 ), array( 'name' => 'b', 'sex' => 'w', 'sort' => 2 ), ); //打印出原数组 print_r($arr); //打印出排好序的数组 print_r(array_sort($arr,'name')); ?>
通过打印出的结果我们就可以看到,数组根据“name”进行排序。
//原数组 Array ( [0] => Array ( [name] => a [sex] => m [sort] => 5 ) [1] => Array ( [name] => c [sex] => m [sort] => 8 ) [2] => Array ( [name] => g [sex] => m [sort] => 3 ) [3] => Array ( [name] => e [sex] => w [sort] => 6 ) [4] => Array ( [name] => b [sex] => w [sort] => 2 ) ) //排序后数组 Array ( [2] => Array ( [name] => g [sex] => m [sort] => 3 ) [3] => Array ( [name] => e [sex] => w [sort] => 6 ) [1] => Array ( [name] => c [sex] => m [sort] => 8 ) [4] => Array ( [name] => b [sex] => w [sort] => 2 ) [0] => Array ( [name] => a [sex] => m [sort] => 5 ) )
关于使用PHP怎么将二维数组根据key进行排序就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。