一開始遇到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 排序便可圖片