PHP 數(shù)組排序
數(shù)組中的元素可以按字母或數(shù)字順序進行降序或升序排列。
升序:從小到大的順序進行排序,如果是英文單詞,那么按字母A-Za-z的順序排序,如果是數(shù)字,那么按數(shù)字的大小進行排序。
降序:與升序相反
數(shù)組排序函數(shù)
在本章中,我們將一一介紹下列 PHP 數(shù)組排序函數(shù):
· ? sort() - 對數(shù)組進行升序排列
· ? rsort() - 對數(shù)組進行降序排列
· ? asort() - 根據(jù)關(guān)聯(lián)數(shù)組的值,對數(shù)組進行升序排列
· ? ksort() - 根據(jù)關(guān)聯(lián)數(shù)組的鍵,對數(shù)組進行升序排列
· ? arsort() - 根據(jù)關(guān)聯(lián)數(shù)組的值,對數(shù)組進行降序排列
· ? krsort() - 根據(jù)關(guān)聯(lián)數(shù)組的鍵,對數(shù)組進行降序排列
sort()函數(shù)
注:sort大多是用來排序數(shù)字索引數(shù)組的,如果把一個關(guān)聯(lián)數(shù)組放到sort里排序,那么數(shù)組的鍵會丟失
實例
下面的實例將數(shù)組中的元素按照升序排列:
<?php $sum=array(100,25,85,68,Y,M,w,s,a,H,45,A,P); sort($sum); print_r($sum); ?>
下面是程序運行結(jié)果:
通過上面的例子可以看出來,我們已經(jīng)用sort()函數(shù),對數(shù)組進行了升序排序,你不妨將sort()函數(shù) 換成rsort() 看看有什么變化吧。
小思考
既然關(guān)聯(lián)數(shù)組不能使用sort來排序,那么應(yīng)該使用什么函數(shù)呢?
這就要用到我們下面所學(xué)的asort()函數(shù)了
asort()函數(shù)
實例
下面的實例根據(jù)數(shù)組的值,對關(guān)聯(lián)數(shù)組進行升序排列:
<?php $age=array("Tom"=>"25","Andy"=>"18","Joe"=>"23","Ben"=>"28"); asort($age); print_r($age); ?>
通過上面例子的運行結(jié)果我們可以看到asort()函數(shù)實際上是使用數(shù)組的值進行排序的,那么如果想對鍵進行排序,我們可以使用
ksort()函數(shù)
ksort()函數(shù)
實例
下面的實例根據(jù)數(shù)組的鍵,對關(guān)聯(lián)數(shù)組進行升序排列:
<?php $age=array("Tom"=>"25","Andy"=>"18","Joe"=>"23","Ben"=>"28"); ksort($age); print_r($age); ?>
上面的幾個例子我們都是對數(shù)組進行升序排序,你們不妨試著看進行對數(shù)組進行降序排序,用法都是相同的。試試看吧
完整的 PHP 數(shù)組參考手冊
如需完整的數(shù)組函數(shù)參考手冊,請訪問我們的?PHP 數(shù)組參考手冊。
該參考手冊包含每個函數(shù)的簡要描述、使用示例。