主要用到两个函数:
1.array_column() 返回输入数组中某个单一列的值。php版本5.5以后自带
这里提供个php版本低于5.5的兼容方式
if (!function_exists(\'array_column\')) { function array_column($input, $column_key=null, $index_key=null) { $result = array(); $i = 0; foreach ($input as $v) { $k = $index_key === null || !isset($v[$index_key]) ? $i++ : $v[$index_key]; $result[$k] = $column_key === null ? $v : (isset($v[$column_key]) ? $v[$column_key] : null); } return $result; } }
2.array_multisort() 函数返回排序数组。您可以输入一个或多个数组。函数先对第一个数组进行排序,接着是其他数组,如果两个或多个值相同,它将对下一个数组进行排序。
具体代码:[代码取自:https://www.cnblogs.com/wenzheshen/]
<?php $data = array( array( \'id\' => 5698, \'first_name\' => \'Bill\', \'last_name\' => \'Gates\', ), array( \'id\' => 4767, \'first_name\' => \'Steve\', \'last_name\' => \'Aobs\', ), array( \'id\' => 3809, \'first_name\' => \'Mark\', \'last_name\' => \'Zuckerberg\', ) ); //根据字段last_name对数组$data进行降序排列 $last_names = array_column($data,\'last_name\'); array_multisort($last_names,SORT_DESC,$data); var_dump($data); ?>
参考文档: