php对二维数组进行排序
这几天一直忙于公司某个系统的开发,没来得及更新,真是罪过。php对二维数组的排序其实很简单,但要是不知道array_multisort这个函数就比较费事了。
这个函数的用法举例如下:
[*]$data = array();
[*]$data[] = array('volume' => 67, 'edition' => 2);
[*]$data[] = array('volume' => 86, 'edition' => 1);
[*]$data[] = array('volume' => 85, 'edition' => 6);
[*]$data[] = array('volume' => 98, 'edition' => 2);
[*]$data[] = array('volume' => 86, 'edition' => 6);
[*]$data[] = array('volume' => 67, 'edition' => 7);
[*]
[*]// 取得列的列表
[*]foreach ($data as $key => $row)
[*]{
[*] $volume[$key]= $row['volume'];
[*] $edition[$key] = $row['edition'];
[*]}
[*]
[*]array_multisort($volume, SORT_DESC, $edition, SORT_ASC, $data);
[*]
[*]print_r($data);
输出:
[*]Array
[*](
[*] => Array
[*] (
[*] => 98
[*] => 2
[*] )
[*]
[*] => Array
[*] (
[*] => 86
[*] => 1
[*] )
[*]
[*] => Array
[*] (
[*] => 86
[*] => 6
[*] )
[*]
[*] => Array
[*] (
[*] => 85
[*] => 6
[*] )
[*]
[*] => Array
[*] (
[*] => 67
[*] => 2
[*] )
[*]
[*] => Array
[*] (
[*] => 67
[*] => 7
[*] )
[*]
[*])
这个函数的参数非常灵活,大家可以对照手册仔细研究下。
页:
[1]