PHP數(shù)組排序
PHP?數(shù)組排序
數(shù)組中的元素可以按字母或數(shù)字順序進行降序或升序排列。
PHP - 數(shù)組排序函數(shù)
在本章中,我們將一一介紹下列 PHP 數(shù)組排序函數(shù):
·???????? sort() - 對數(shù)組進行升序排列
·???????? rsort() - 對數(shù)組進行降序排列
·???????? asort() - 根據(jù)關聯(lián)數(shù)組的值,對數(shù)組進行升序排列
·???????? ksort() - 根據(jù)關聯(lián)數(shù)組的鍵,對數(shù)組進行升序排列
·???????? arsort() - 根據(jù)關聯(lián)數(shù)組的值,對數(shù)組進行降序排列
·???????? krsort() - 根據(jù)關聯(lián)數(shù)組的鍵,對數(shù)組進行降序排列
·???????? shuffle() - 對數(shù)組中的元素進行隨機的排序
·???????? array_reverse() -反序是將一個原始的數(shù)組中的每個元素的順序翻轉(zhuǎn)
sort() - 對數(shù)組進行升序排列
下面的實例將 $cars 數(shù)組中的元素按照字母升序排列:
實例
<?php $cars=array("Volvo","BMW","Toyota"); sort($cars); ?>
下面的實例將 $numbers 數(shù)組中的元素按照數(shù)字升序排列:
實例
<?php $numbers=array(4,6,2,22,11); sort($numbers); ?>
rsort() - 對數(shù)組進行降序排列
下面的實例將 $cars 數(shù)組中的元素按照字母降序排列:
實例
<?php $cars=array("Volvo","BMW","Toyota"); rsort($cars); ?>
下面的實例將 $numbers 數(shù)組中的元素按照數(shù)字降序排列:
實例
<?php $numbers=array(4,6,2,22,11); rsort($numbers); ?>
asort() - 根據(jù)數(shù)組的值,對數(shù)組進行升序排列
下面的實例根據(jù)數(shù)組的值,對關聯(lián)數(shù)組進行升序排列:
實例
<?php $age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43"); asort($age); ?>
?
ksort() - 根據(jù)數(shù)組的鍵,對數(shù)組進行升序排列
下面的實例根據(jù)數(shù)組的鍵,對關聯(lián)數(shù)組進行升序排列:
實例
<?php $age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43"); ksort($age); ?>
arsort() - 根據(jù)數(shù)組的值,對數(shù)組進行降序排列
下面的實例根據(jù)數(shù)組的值,對關聯(lián)數(shù)組進行降序排列:
實例
<?php $age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43"); arsort($age); ?>
?
krsort() - 根據(jù)數(shù)組的鍵,對數(shù)組進行降序排列
下面的實例根據(jù)數(shù)組的鍵,對關聯(lián)數(shù)組進行降序排列:
實例
<?php $age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43"); krsort($age); ?>
?
shuffle() - 對數(shù)組中的元素進行隨機的排序
使用shuffle函數(shù)可以對數(shù)組中的元素進行隨機的排序 bool?shuffle?(?array?&$array?)
<?php $my_array = array("red","green","blue","yellow","purple");shuffle($my_array); print_r($my_array); ?>
每次執(zhí)行上面的代碼,輸出的順序各不相同,我們用來實現(xiàn)隨機的排名
注意:關聯(lián)數(shù)組被shuffle后,鍵會丟失
array_reverse() -反序是將一個原始的數(shù)組中的每個元素的順序翻轉(zhuǎn)
?反序 ≠ 降序
反序是將一個原始的數(shù)組中的每個元素的順序翻轉(zhuǎn)
array?array_reverse?(?array?$array?[,?bool?$preserve_keys?= false?] )
如果數(shù)組是關聯(lián)數(shù)組
??????? 鍵為字符時反序不受影響,鍵仍然會保留
??????? 鍵是數(shù)字時,反序后默認鍵會重置為0、1、2……
??????? 第二個參數(shù)為true時,鍵為數(shù)字,反序保留數(shù)字鍵
<?php $names = array(10 => '張三', 60 => '阿毛', 30 => '李四', 25 => '寶哥'); print_r(array_reverse($names)); print_r(array_reverse($names, true)); ?>
完整的 PHP Array 參考手冊
如需查看所有數(shù)組函數(shù)的完整參考手冊,請訪問我們的?PHP Array 參考手冊。
該參考手冊提供了每個函數(shù)的簡要描述和應用實例!