常用PHP數(shù)組排序函數(shù)歸納
數(shù)組排序:數(shù)組中的元素能夠以字母或數(shù)字順序進(jìn)行升序或降序排序。
常用的PHP數(shù)組排序函數(shù)
•sort() - 以升序?qū)?shù)組排序
•rsort() - 以降序?qū)?shù)組排序
•asort() - 根據(jù)值,以升序?qū)﹃P(guān)聯(lián)數(shù)組進(jìn)行排序
•ksort() - 根據(jù)鍵,以升序?qū)﹃P(guān)聯(lián)數(shù)組進(jìn)行排序
•arsort() - 根據(jù)值,以降序?qū)﹃P(guān)聯(lián)數(shù)組進(jìn)行排序
•krsort() - 根據(jù)鍵,以降序?qū)﹃P(guān)聯(lián)數(shù)組進(jìn)行排序
舉例:
sort()-以升序?qū)?shù)組排序
注釋:本函數(shù)為數(shù)組中的單元賦予新的鍵名。原有的鍵名將被刪除。
如果成功則返回true 失敗返回 false
例如:
<?php $arr1 = array('a', 'd', 'c', 'b'); $arr2 = array(1, 3, 2, 4); print_r(sort($arr1) ? $arr1 : "排序失敗"); echo "<br>"; print_r(sort($arr2) ? $arr2 : "排序失敗");
運(yùn)行結(jié)果為:
Array ( [0] => a [1] => b [2] => c [3] => d )
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 )
rsort()函數(shù)同理
asort()- 根據(jù)值,以升序?qū)﹃P(guān)聯(lián)數(shù)組進(jìn)行排序
asort() 函數(shù)對(duì)數(shù)組進(jìn)行排序并保持索引關(guān)系。主要用于對(duì)那些單元順序很重要的結(jié)合數(shù)組進(jìn)行排序。
如果成功則返回 TRUE,否則返回 FALSE。
<?php $arr1 = array('a', 'd', 'c', 'b'); $arr2 = array(1, 3, 2, 4); print_r(asort($arr1) ? $arr1 : "排序失敗"); echo "<br>"; print_r(asort($arr2) ? $arr2 : "排序失敗");
運(yùn)行結(jié)果為:
Array ( [0] => a [3] => b [2] => c [1] => d )
Array ( [0] => 1 [2] => 2 [1] => 3 [3] => 4 )
arsort()函數(shù)同理
ksort() - 根據(jù)鍵,以升序?qū)﹃P(guān)聯(lián)數(shù)組進(jìn)行排序
ksort() 函數(shù)按照鍵名對(duì)數(shù)組排序,為數(shù)組值保留原來(lái)的鍵。
若成功,則返回 TRUE,否則返回 FALSE。
<?php $arr1 = array( '3' => '第三個(gè)', '2' => '第二個(gè)', '4' => '第四個(gè)', '1' => '第一個(gè)', ); print_r(ksort($arr1) ? $arr1 : "排序失敗");
運(yùn)行結(jié)果為:
Array ( [1] => 第一個(gè) [2] => 第二個(gè) [3] => 第三個(gè) [4] => 第四個(gè) )
krsort()函數(shù)同理
補(bǔ)充—array_multisort() 函數(shù)
array_multisort() 函數(shù)返回排序數(shù)組。您可以輸入一個(gè)或多個(gè)數(shù)組。函數(shù)先對(duì)第一個(gè)數(shù)組進(jìn)行排序,接著是其他數(shù)組,如果兩個(gè)或多個(gè)值相同,它將對(duì)下一個(gè)數(shù)組進(jìn)行排序。
注釋:字符串鍵名將被保留,但是數(shù)字鍵名將被重新索引,從 0 開(kāi)始,并以 1 遞增。
注釋:您可以在每個(gè)數(shù)組后設(shè)置排序順序和排序類型參數(shù)。如果沒(méi)有設(shè)置,每個(gè)數(shù)組參數(shù)會(huì)使用默認(rèn)值。
<?php $a1=array("Dog","Dog","Cat"); $a2=array(3, 2, 5); array_multisort($a1, SORT_ASC, $a2, SORT_DESC); print_r($a1); print_r($a2);
運(yùn)行結(jié)果為:
Array ( [0] => Cat [1] => Dog [2] => Dog )
Array ( [0] => 5 [1] => 3 [2] => 2 )
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- PHP 數(shù)組排序方法總結(jié) 推薦收藏
- array_multisort實(shí)現(xiàn)PHP多維數(shù)組排序示例講解
- PHP 多維數(shù)組的排序問(wèn)題 根據(jù)二維數(shù)組中某個(gè)項(xiàng)排序
- php 數(shù)組操作(增加,刪除,查詢,排序)等函數(shù)說(shuō)明
- php二維數(shù)組排序方法(array_multisort usort)
- PHP二維數(shù)組排序的3種方法和自定義函數(shù)分享
- PHP下對(duì)數(shù)組進(jìn)行排序的函數(shù)
- PHP 多維數(shù)組排序(usort,uasort)
- php對(duì)二維數(shù)組按指定鍵值key排序示例代碼
- PHP去除數(shù)組中重復(fù)的元素并按鍵名排序函數(shù)
相關(guān)文章
Mysql的Root密碼忘記,查看或修改的解決方法(圖文介紹)
本篇文章是對(duì)關(guān)于Mysql中的Root密碼忘記,查看或修改的解決方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06php將遠(yuǎn)程圖片保存到本地服務(wù)器的實(shí)現(xiàn)代碼
有些時(shí)候我們想保存一些漂亮圖片,但又不想手動(dòng)去保存下來(lái),尤其是大批量的存儲(chǔ),這個(gè)時(shí)候我們需要寫(xiě)一段程序來(lái)幫助我們完成這個(gè)工作,本文介紹了php如何將遠(yuǎn)程圖片本地化,需要的朋友可以參考下2015-08-08php導(dǎo)入大量數(shù)據(jù)到mysql性能優(yōu)化技巧
這篇文章主要介紹了php導(dǎo)入大量數(shù)據(jù)到mysql性能優(yōu)化技巧,通過(guò)針對(duì)SQL語(yǔ)句的優(yōu)化實(shí)現(xiàn)了mysql性能的提高,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2014-12-12php日期轉(zhuǎn)時(shí)間戳,指定日期轉(zhuǎn)換成時(shí)間戳
UNIX時(shí)間戳和格式化日期是我們常打交道的兩個(gè)時(shí)間表示形式,Unix時(shí)間戳存儲(chǔ)、處理方便,但是不直觀,格式化日期直觀,但是處理起來(lái)不如Unix時(shí)間戳那么自如,所以有的時(shí)候需要互相轉(zhuǎn)換,下面給出PHP日期轉(zhuǎn)時(shí)間戳、MySQL日期轉(zhuǎn)換函數(shù)互相轉(zhuǎn)換的幾種轉(zhuǎn)換方式2012-07-07PHP無(wú)限極分類函數(shù)的實(shí)現(xiàn)方法詳解
這篇文章主要介紹了PHP無(wú)限極分類函數(shù)的實(shí)現(xiàn)方法,結(jié)合實(shí)例形式詳細(xì)分析了php實(shí)現(xiàn)無(wú)限極分類的具體思路、實(shí)現(xiàn)代碼與相關(guān)注意事項(xiàng),需要的朋友可以參考下2017-04-04解析使用substr截取UTF-8中文字符串出現(xiàn)亂碼的問(wèn)題
本篇文章是對(duì)使用substr截取UTF-8中文字符串出現(xiàn)亂碼的問(wèn)題進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06PHP內(nèi)核探索:變量存儲(chǔ)與類型使用說(shuō)明
這篇文章主要介紹了PHP內(nèi)核探索:變量存儲(chǔ)與類型的相關(guān)資料,需要的朋友可以參考下2014-01-01