PHP數組常用操作與常用排序函數

1、統計數組中元素個數:
int count(mixed array [,int mode])--第二個參數值爲COUNT_RECURSIVE(或1),使用本參數,本函數將會遞歸的對數組計數,對計算多維數組的所有單元尤其有用。此參數默認值爲0.
2、向數組末尾加入一個元素:(將數組當爲一個棧)
int array_push(array array,mixed var)--第一個參數原數組,第二個參數被壓入的數組。
3、獲取數組最後一個元素:
mixed array_pop(array array)--取出最後一個元素,數組元素個數減一,
4、去除數組中的重複元素:
array array_unique()--刪除數組中重複元素,索引保留
5、對數組中的元素進行隨機排序:
void shuffle()--將數組中的元素重新排序,並賦予新的索引
6、檢查數組中是否存在某個值:
bool array_key_exists(key,array)--檢查給定的鍵名或索引key是否存在於數組array中
7、獲取數組中的當前元素:
mixed current(array)--返回數組內部指針指向的元素,但並不移動指針,超出數組的末端,返回FALSE
8、從數組中隨機抽取元素:
mixed array_rand(array,num)--array:傳入數組,num:輸出數組元素的個數,返回一個隨機元素的鍵名或者包含隨機鍵名的數組。
9、合併數組:
array array_merge()--合併多個數組,將後面一個數組的值附加到前面一個數組中。如果這兩個數組有相同的字符串鍵名,則該鍵名後面的值將覆蓋前面的值,如果有相同的數字鍵名,則後面的值的鍵名會改變並附加到前一個數組中。
10、拆分數組:
array array_chunk(array,size)--array:源數組,size:分割成指定數量的數組
11、數組常用排序函數:
主要區別有:
- 有些函數基於 array 的鍵來排序, 而其他的基於值來排序的:$array['key'] = 'value';。
- 排序之後鍵和值之間的關聯關係是否能夠保持, 是指排序之後數組的鍵可能 會被重置爲數字型的(0,1,2 ...)。
- 排序的順序有:字母表順序, 由低到高(升序), 由高到低(降序),數字排序,自然排序,隨機順序或者用戶自定義排序。
- 注意:下列的所有排序函數都是直接作用於數組本身, 而不是返回一個新的有序的數組。
- 以下函數對於數組中相等的元素,它們在排序後的順序是未定義的。 (也即相等元素之間的順序是不穩定的)。

函數名稱           排序依據                         數組索引鍵保持                         排序的順序                      相關函數
array_multisort()  值                    鍵值關聯的保持,數字類型的不保持            第一個數組或者由選項指定               array_walk()

asort()            值                                是                                由低到高                         arsort()

arsort()           值                                是                                由高到低                         asort()

krsort()           鍵                                是                                由高到低                         ksort()

ksort()            鍵                                是                                由低到高                         asort()

natcasesort()      值                                是                           自然排序,大小寫不敏感                 natsort()

natsort()          值                                是                                自然排序                         natcasesort()

rsort()            值                                否                                由高到低                         sort()

shuffle()          值                                否                                  隨機                           array_rand()

sort()             值                                否                                由高到低                         rsort()

uasort()           值                                是                                由用戶定義                       uksort()

uksort()           鍵                                是                                由用戶定義                       uasort()

usort()            值                                否                                由用戶定義                       uasort()

發佈了48 篇原創文章 · 獲贊 5 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章