PHP 陣列排序

陣列中的元素可以按字母或數字順序進行降序或升序排列。

PHP - 陣列排序函數

#在本章中,我們將一一介紹下列PHP 陣列排序函數:

# sort() - 對陣列進行升序排列

rsort() - 將陣列進行降序排列

asort() - 根據關聯陣列的值,將陣列進行升序排列

ksort() - 根據關聯數組的鍵,對數組進行升序排列

arsort() - 根據關聯數組的值,對數組進行降序排列

krsort() - 根據關聯數組的鍵,對數組進行降序排列

sort() - 對數組進行升序排列

下面的實例將$cars 數組中的元素依照字母升序排列:

實例

<?php
$cars=array("Volvo","BMW","Toyota");
sort($cars);
print_r($cars);
?>

試試看»

#下面的實例將$numbers 陣列中的元素依照數字升序排列:

#實例

<?php
$numbers=array(4,6,2,22,11);
sort($numbers);
print_r($numbers);
?>

試試看»

rsort() - 對陣列進行降序排列

##下面的實例將$cars陣列中的元素依照字母降序排列:

實例

<?php
$cars=array("Volvo","BMW","Toyota");
rsort($cars);
print_r($cars);
?>

試試看»

下面的實例將$numbers 陣列中的元素依照數字降序排列:

實例

<?php
$numbers=array(4,6,2,22,11);
rsort($numbers);
print_r($numbers);
?>

試試看»


asort() - 根據陣列的值,對陣列進行升序排列

下面的實例根據數組的值,將關聯數組升序排列:

#實例

<?php
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");
asort($age);
print_r($age);
?>

嘗試»

ksort() - 根據數組的鍵,對數組進行升序排列

下面的實例根據數組的鍵,對關聯數組進行升序排列:

#實例

<?php
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");
ksort($age);
print_r($age);
?>

試試看»


arsort() - 根據陣列的值,對陣列進行降序排列

下面的實例根據數組的值,對關聯數組進行降序排列:

實例

<?php
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");
arsort($age);
print_r($age);
?>

嘗試»

krsort() - 根據數組的鍵,對數組進行降序排列

下面的實例根據數組的鍵,對關聯數組進行降序排列:

實例

<?php
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");
krsort($age);
print_r($age);
?>

試試看»

還有2個函數說明一下:

#1.shuffle 隨機亂序

shuffle函數可以對數組中的元素進行隨機的排序

實例

<?php
$numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
shuffle($number);
print_r($number);
?>

每次執行上面的程式碼,輸出的順序各不相同, 注意:關聯數組被shuffle後,鍵會遺失


#2.array_reverse 反序函數##反序是將一個原始的數組中的每個元素的順序翻轉反序≠ 降序

如果數組為關聯數組:

鍵為字元時反序不受影響,鍵仍然會保留

鍵是數字時,反序後預設鍵會重設為0、1、2…

第二個參數為true時,鍵為數字,反序保留數字鍵

實例

<?php
$names = [10 => '张三', 60 => '阿毛', 30 => '李四', 25 => '宝哥'];
print_r(array_reverse($names));
print_r(array_reverse($names, true));
?>

完整的PHP Array 參考手冊

如需查看所有陣列函數的完整參考手冊,請造訪我們的 PHP Array 參考手冊。

此參考手冊提供了每個函數的簡要描述和應用實例!


繼續學習
||
<?php $numbers=array(4,6,2,22,11); sort($numbers); print_r($numbers); ?>