PHP 陣列排序
陣列中的元素可以按字母或數(shù)字順序進(jìn)行降序或升序排列。
PHP - 陣列排序函數(shù)
#在本章中,我們將一一介紹下列PHP 陣列排序函數(shù):
# sort() - 對陣列進(jìn)行升序排列
rsort() - 將陣列進(jìn)行降序排列
asort() - 根據(jù)關(guān)聯(lián)陣列的值,將陣列進(jìn)行升序排列
ksort() - 根據(jù)關(guān)聯(lián)數(shù)組的鍵,對數(shù)組進(jìn)行升序排列
arsort() - 根據(jù)關(guān)聯(lián)數(shù)組的值,對數(shù)組進(jìn)行降序排列
krsort() - 根據(jù)關(guān)聯(lián)數(shù)組的鍵,對數(shù)組進(jìn)行降序排列
sort() - 對數(shù)組進(jìn)行升序排列
下面的實(shí)例將$cars 數(shù)組中的元素依照字母升序排列:
實(shí)例
<?php $cars=array("Volvo","BMW","Toyota"); sort($cars); print_r($cars); ?>
試試看?
#下面的實(shí)例將$numbers 陣列中的元素依照數(shù)字升序排列:
#實(shí)例
<?php $numbers=array(4,6,2,22,11); sort($numbers); print_r($numbers); ?>
試試看?
rsort() - 對陣列進(jìn)行降序排列
##下面的實(shí)例將$cars陣列中的元素依照字母降序排列:實(shí)例<?php $cars=array("Volvo","BMW","Toyota"); rsort($cars); print_r($cars); ?>試試看?下面的實(shí)例將$numbers 陣列中的元素依照數(shù)字降序排列:
實(shí)例
<?php $numbers=array(4,6,2,22,11); rsort($numbers); print_r($numbers); ?>試試看?
asort() - 根據(jù)陣列的值,對陣列進(jìn)行升序排列
下面的實(shí)例根據(jù)數(shù)組的值,將關(guān)聯(lián)數(shù)組升序排列:#實(shí)例<?php $age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43"); asort($age); print_r($age); ?>嘗試?
ksort() - 根據(jù)數(shù)組的鍵,對數(shù)組進(jìn)行升序排列
<?php $age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43"); ksort($age); print_r($age); ?>試試看?
arsort() - 根據(jù)陣列的值,對陣列進(jìn)行降序排列
<?php $age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43"); arsort($age); print_r($age); ?>嘗試?
krsort() - 根據(jù)數(shù)組的鍵,對數(shù)組進(jìn)行降序排列
<?php $age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43"); krsort($age); print_r($age); ?>試試看?
還有2個(gè)函數(shù)說明一下:
#1.shuffle 隨機(jī)亂序
shuffle函數(shù)可以對數(shù)組中的元素進(jìn)行隨機(jī)的排序實(shí)例<?php $numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; shuffle($number); print_r($number); ?>每次執(zhí)行上面的程式碼,輸出的順序各不相同,?注意:關(guān)聯(lián)數(shù)組被shuffle後,鍵會(huì)遺失
#2.array_reverse 反序函數(shù)##反序是將一個(gè)原始的數(shù)組中的每個(gè)元素的順序翻轉(zhuǎn)反序≠ 降序
如果數(shù)組為關(guān)聯(lián)數(shù)組:
鍵為字元時(shí)反序不受影響,鍵仍然會(huì)保留
鍵是數(shù)字時(shí),反序後預(yù)設(shè)鍵會(huì)重設(shè)為0、1、2…
第二個(gè)參數(shù)為true時(shí),鍵為數(shù)字,反序保留數(shù)字鍵
實(shí)例
<?php $names = [10 => '張三', 60 => '阿毛', 30 => '李四', 25 => '寶哥']; print_r(array_reverse($names)); print_r(array_reverse($names, true)); ?>
完整的PHP Array 參考手冊
如需查看所有陣列函數(shù)的完整參考手冊,請?jiān)煸L我們的?PHP Array 參考手冊。
此參考手冊提供了每個(gè)函數(shù)的簡要描述和應(yīng)用實(shí)例!