一开始遇到array_multisort 这个函数时,看手册 怎么就是看不懂,很不理解。后来在网上看了不少的例子 才慢慢理解一点。如今记下来,留着用。sql
$a=array("Dog","Cat","Horse","Bear","Zebra"); array_multisort($a); print_r($a);
结果:数据库
Array( [0] => Bear [1] => Cat [2] => Dog [3] => Horse [4] => Zebra)
上面就是按照普通的字母升序排列(A,B,C,D...),没什么好讲的数组
$ar1 = array(22,12,3); $ar2 = array(1,3,7); array_multisort($ar1, $ar2); echo '<pre>'; print_r($ar1); print_r($ar2);
结果:函数
Array( [0] => 3 [1] => 12 [2] => 22 ) Array ( [0] => 7 [1] => 3 [2] => 1 )
$ar1和$ar2的数据能够当作一个表 以下:spa
$ar1和$ar2分别为列名,而后如sql语句同样select * from table order by $ar1 asc ,$ar2 asc 排序便可3d
一般咱们从数据库取出来的code
$data=array( array('id' => 67, 'score' => 20,'name'=>'小明'), array('id' => 86, 'score' => 10,'name'=>'小红'), array('id' => 85, 'score' => 60,'name'=>'小花') ); foreach ($data as $key => $row) { $id[$key] = $row['id']; $score[$key] = $row['score']; } array_multisort($id, SORT_ASC, $data); echo "<pre>"; print_r($data);
结果:blog
Array ( [0] => Array ( [id] => 67 [score] => 2 [name] => 小明 ) [1] => Array ( [id] => 85 [score] => 6 [name] => 小花 ) [2] => Array ( [id] => 86 [score] => 1 [name] => 小红 ) )
此时,把id,score,name当作列名称如图排序
若是想按照某个字段排序 ,先循环获取到全部该字段的值造成一个数组,而后按照该字段排序便可。而后如sql语句同样select * from table order by $id asc 排序便可图片