本文章主要求介紹了利用php自帶的函數來實現數組進行排序,包括了一維數組排名,多維數組排序,隨機排序等。
array_multisort($a,$b),$a,$b是兩個數
•sort() 函數用於對數組單元從低到高進行排序。
•rsort() 函數用於對數組單元從高到低進行排序。
•asort() 函數用於對數組單元從低到高進行排序並保持索引關系。
•arsort() 函數用於對數組單元從高到低進行排序並保持索引關系。
•ksort() 函數用於對數組單元按照鍵名從低到高進行排序。
•krsort() 函數用於對數組單元按照鍵名從高到低進行排序。
對多個數組排序
array_multisort($a,$b),$a,$b是兩個數組,如果排序之後,$a數組的第3個元素被排到了第一位,那麼$b的第三個元素不管他在$b中的大小都會排在第一位。看看下邊的程序運行結果:
代碼如下 復制代碼
<?php
$ar1 = array("10", 100, 100, "a");
$ar2 = array(1, 3, "2", 1);
array_multisort($ar1, $ar2);
var_dump($ar1);
var_dump($ar2);
?>
隨機排序
代碼如下 復制代碼$array = array('A','2','3','4','5','6','7','8','9','10','J','Q','K');
shuffle($array);//隨機排序數組
print_r($array);//輸出數組
. 對多維數組排序
代碼如下 復制代碼<?php
$ar = array (array ("10", 100, 100, "a"), array (1, 3, "2", 1));
array_multisort ($ar[0], SORT_ASC, SORT_STRING,
$ar[1], SORT_NUMERIC, SORT_DESC);
?>
數組排序最常用的函數就是 sort($arr); 它的作用是按數組的鍵值升序排列,並且排序後的數組鍵名不再是原來的鍵名,是按新數組來重新設置的鍵名。
而有時我們要求更復雜的排序。如按鍵名排序,這裡用到 ksort($arr); 函數,它會根據數組的鍵名排序,並維持原有的鍵值關系。相對應的 asort($arr); 函數,是按鍵值排序,且維持原有的鍵值關系
同樣原理,rsort(); arsort(); krsort(); 函數除了排序是按降序排列外,其它與sort(); rsort(); ksort(); 相同。
數組操作是PHP很重要的基礎