PHP 陣列排序

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

升序:從小到大的順序進行排序,如果是英文單詞,那麼按字母A-Za-z的順序排序,如果是數字,那麼按數字的大小進行排序。

降序:與升序相反


陣列排序函數

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

sort() - 將陣列升序排列

·  

rsort()

- 對陣列進行降序排列

·   asort()

- 根據關聯陣列的值,將陣列升序排列·   ksort()

- 根據關聯數組的鍵,將數組升序排列·  

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

·   krsort() - 根據關聯陣列的鍵,將陣列進行降序排列

1.png

sort()函數


##:sort大多是用來排序數字索引數組的,如果把一個關聯數組放到sort裡排序,那麼數組的鍵會遺失

##實例

下面的實例將陣列中的元素依照升序排列:


# #

<?php
 $sum=array(100,25,85,68,Y,M,w,s,a,H,45,A,P);
 sort($sum);
 print_r($sum);
 ?>
下面是程式運行結果:

#########透過上面的範例可以看出來,我們已經用######sort()#### ##函數,對數組進行了升序排序,你不妨將######sort()######函數換成rsort() 看看有什麼變化吧。 ###############小思考################既然關聯陣列不能使用sort來排序,那麼該使用什麼函數呢? ############這就要用到我們下面所學的######asort()######函數了########### ################asort()函數######

實例

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

<?php
 $age=array("Tom"=>"25","Andy"=>"18","Joe"=>"23","Ben"=>"28");
 asort($age);
 print_r($age);
 ?>

透過上面範例的運行結果我們可以看到asort()函數實際上是使用陣列的值進行排序的,那麼如果想對鍵進行排序,我們可以使用

ksort()函數


ksort()函數

實例

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

<?php
 $age=array("Tom"=>"25","Andy"=>"18","Joe"=>"23","Ben"=>"28");
 ksort($age);
 print_r($age);
 ?>

上面的幾個例子我們都是對數組進行升序排序,你們不妨試著看進行對數組進行降序排序,用法都是相同的。試試看吧

完整的PHP 陣列參考手冊

##如需完整的陣列函數參考手冊,請造訪我們的 PHP 陣列參考手冊。

此參考手冊包含每個函數的簡要描述、使用範例。


繼續學習
||
<?php $sum=array(100,25,85,68,Y,M,w,s,a,H,45,A,P); sort($sum); print_r($sum); ?>