php 中最強大的類型非數組莫屬!任何類型的數據都可以用數組來存儲。
項目開發中對數組排序已是家常便飯,本文主要是總結一些經驗和方法以及它們的區別,供大家學習參考。
一維數組排序 sort 函數:本函數對數組值轉換為整型并被從最低到最高重新安排,刪除原有的鍵名。成功時返回 TRUE, 或者在失敗時返回 FALSE.
rsort 函數:本函數對數組值轉換為整型并被從最高到最低重新安排,刪除原有的鍵名。成功時返回 TRUE, 或者在失敗時返回 FALSE.
asort 函數:本函數對數組進行低到高排序,數組的索引保持和單元的關聯。主要用于對那些單元順序很重要的結合數組進行排序。
arsort 函數:對數組進行逆向排序(高到低)并保持索引關系
本函數對數組進行排序,數組的索引保持和單元的關聯。主要用于對那些單元順序很重要的結合數組進行排序。
成功時返回 TRUE, 或者在失敗時返回 FALSE.
本函數將用用戶自定義的比較函數對一個數組中的值進行排序。如果要排序的數組需要用一種不尋常的標準進行排序,那么應該使用此函數。
比較函數必須在第一個參數被認為小于,等于或大于第二個參數時分別返回一個小于,等于或大于零的整數
此函數為 array 中的元素賦與新的鍵名。這將刪除原有的鍵名,而不是僅僅將鍵名重新排序。
成功時返回 TRUE, 或者在失敗時返回 FALSE.
uasort — 使用用戶自定義的比較函數對數組中的值進行排序并保持索引關聯
本函數對數組排序并保持索引和單元之間的關聯。主要用于對那些單元順序很重要的結合數組進行排序。
比較函數是用戶自定義的。
成功時返回 TRUE, 或者在失敗時返回 FALSE.
uksort 函數:bool uksort (array&$array ,callback$cmp_function )本函數將使用用戶提供的比較函數對數組中的鍵名進行排序。如果要排序的數組需要用一種不尋常的標準進行排序,那么應該使用此函數。
cmp_function 函數應接受兩個參數,該參數將被array 中的一對鍵名填充。
比較函數在第一個參數小于,等于,或大于第二個參數時必須分別返回一個小于零,等于零,或大于零的整數。
成功時返回 TRUE, 或者在失敗時返回 FALSE(本排序方法和 uasort 非常類似).
array_multisort函數: bool array_multisort (array$ar1 [,mixed$arg [,mixed$... [,array$... ]]] )可以用來一次對多個數組進行排序,或者根據某一維或多維對多維數組進行排序。
關聯(string)鍵名保持不變,但數字鍵名會被重新索引。
本函數的參數結構有些不同尋常,但是非常靈活。
第一個參數必須是一個數組。接下來的每個參數可以是數組或者是下面列出的排序標志。
排序順序標志:
?SORT_ASC - 按照上升順序排序
?SORT_DESC - 按照下降順序排序
排序類型標志:
?SORT_REGULAR - 將項目按照通常方法比較
?SORT_NUMERIC - 將項目按照數值比較
?SORT_STRING - 將項目按照字符串比較 每個數組之后不能指定兩個同類的排序標志。
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。
新聞熱點
疑難解答