PHP數(shù)組函數(shù)允許您以各種方式與數(shù)組進(jìn)行交互和操作。PHP數(shù)組對(duì)于存儲(chǔ),管理和操作變量集至關(guān)重要。
PHP支持簡單的多維數(shù)組,可以是用戶創(chuàng)建的,也可以是其他函數(shù)創(chuàng)建的。
使用PHP數(shù)組函數(shù)不需要安裝;數(shù)組函數(shù)是PHP核心的一部分,因此您可以在腳本中使用這些函數(shù),而無需進(jìn)一步安裝。
下表列出了與PHP Array相關(guān)的所有函數(shù)。表格中的版本表示支持該函數(shù)的PHP的最早版本。
函數(shù) | 函數(shù)說明 |
---|---|
array() | 創(chuàng)建數(shù)組。 |
array_change_key_case() | 返回其鍵均為大寫或小寫的數(shù)組。 |
array_chunk() | 把一個(gè)數(shù)組分割為新的數(shù)組塊。 |
array_column() | 返回輸入數(shù)組中某個(gè)單一列的值。 |
array_combine() | 通過合并兩個(gè)數(shù)組(一個(gè)為鍵名數(shù)組,一個(gè)為鍵值數(shù)組)來創(chuàng)建一個(gè)新數(shù)組。 |
array_count_values() | 用于統(tǒng)計(jì)數(shù)組中所有值出現(xiàn)的次數(shù)。 |
array_diff() | 比較數(shù)組,返回兩個(gè)數(shù)組的差集(只比較鍵值)。 |
array_diff_assoc() | 比較數(shù)組,返回兩個(gè)數(shù)組的差集(比較鍵名和鍵值)。 |
array_diff_key() | 比較數(shù)組,返回兩個(gè)數(shù)組的差集(只比較鍵名)。 |
array_diff_uassoc() | 比較數(shù)組,返回兩個(gè)數(shù)組的差集(比較鍵名和鍵值,使用用戶自定義的鍵名比較函數(shù))。 |
array_diff_ukey() | 比較數(shù)組,返回兩個(gè)數(shù)組的差集(只比較鍵名,使用用戶自定義的鍵名比較函數(shù))。 |
array_fill() | 用給定的鍵值填充數(shù)組。 |
array_fill_keys() | 用給定的指定鍵名的鍵值填充數(shù)組。 |
array_filter() | 用回調(diào)函數(shù)過濾數(shù)組中的元素。 |
array_flip() | 反轉(zhuǎn)/交換數(shù)組中的鍵名和對(duì)應(yīng)關(guān)聯(lián)的鍵值。 |
array_intersect() | 比較數(shù)組,返回兩個(gè)數(shù)組的交集(只比較鍵值)。 |
array_intersect_assoc() | 比較數(shù)組,返回兩個(gè)數(shù)組的交集(比較鍵名和鍵值)。 |
array_intersect_key() | 比較數(shù)組,返回兩個(gè)數(shù)組的交集(只比較鍵名)。 |
array_intersect_uassoc() | 比較數(shù)組,返回兩個(gè)數(shù)組的交集(比較鍵名和鍵值,使用用戶自定義的鍵名比較函數(shù))。 |
array_intersect_ukey() | 比較數(shù)組,返回兩個(gè)數(shù)組的交集(只比較鍵名,使用用戶自定義的鍵名比較函數(shù))。 |
array_key_exists() | 檢查指定的鍵名是否存在于數(shù)組中。 |
array_keys() | 返回?cái)?shù)組中所有的鍵名。 |
array_map() | 將用戶自定義函數(shù)作用到給定數(shù)組的每個(gè)值上,返回新的值。 |
array_merge() | 把一個(gè)或多個(gè)數(shù)組合并為一個(gè)數(shù)組。 |
array_merge_recursive() | 遞歸地把一個(gè)或多個(gè)數(shù)組合并為一個(gè)數(shù)組。 |
array_multisort() | 對(duì)多個(gè)數(shù)組或多維數(shù)組進(jìn)行排序。 |
array_pad() | 將指定數(shù)量的帶有指定值的元素插入到數(shù)組中。 |
array_pop() | 刪除數(shù)組中的最后一個(gè)元素(出棧)。 |
array_product() | 計(jì)算數(shù)組中所有值的乘積。 |
array_push() | 將一個(gè)或多個(gè)元素插入數(shù)組的末尾(入棧)。 |
array_rand() | 從數(shù)組中隨機(jī)選出一個(gè)或多個(gè)元素,返回鍵名。 |
array_reduce() | 通過使用用戶自定義函數(shù),迭代地將數(shù)組簡化為一個(gè)字符串,并返回。 |
array_replace() | 使用后面數(shù)組的值替換第一個(gè)數(shù)組的值。 |
array_replace_recursive() | 遞歸地使用后面數(shù)組的值替換第一個(gè)數(shù)組的值。 |
array_reverse() | 將原數(shù)組中的元素順序翻轉(zhuǎn),創(chuàng)建新的數(shù)組并返回。 |
array_search() | 在數(shù)組中搜索給定的值,如果成功則返回相應(yīng)的鍵名。 |
array_shift() | 刪除數(shù)組中的第一個(gè)元素,并返回被刪除元素的值。 |
array_slice() | 返回?cái)?shù)組中的選定部分。 |
array_splice() | 把數(shù)組中的指定元素去掉并用其它值取代。 |
array_sum() | 返回?cái)?shù)組中所有值的和。 |
array_udiff() | 比較數(shù)組,返回兩個(gè)數(shù)組的差集(只比較鍵值,使用一個(gè)用戶自定義的鍵名比較函數(shù))。 |
array_udiff_assoc() | 比較數(shù)組,返回兩個(gè)數(shù)組的差集(比較鍵名和鍵值,使用內(nèi)建函數(shù)比較鍵名,使用用戶自定義函數(shù)比較鍵值)。 |
array_udiff_uassoc() | 比較數(shù)組,返回兩個(gè)數(shù)組的差集(比較鍵名和鍵值,使用兩個(gè)用戶自定義的鍵名比較函數(shù))。 |
array_uintersect() | 比較數(shù)組,返回兩個(gè)數(shù)組的交集(只比較鍵值,使用一個(gè)用戶自定義的鍵名比較函數(shù))。 |
array_uintersect_assoc() | 比較數(shù)組,返回兩個(gè)數(shù)組的交集(比較鍵名和鍵值,使用內(nèi)建函數(shù)比較鍵名,使用用戶自定義函數(shù)比較鍵值)。 |
array_uintersect_uassoc() | 比較數(shù)組,返回兩個(gè)數(shù)組的交集(比較鍵名和鍵值,使用兩個(gè)用戶自定義的鍵名比較函數(shù))。 |
array_unique() | 刪除數(shù)組中重復(fù)的值。 |
array_unshift() | 在數(shù)組開頭插入一個(gè)或多個(gè)元素。 |
array_values() | 返回?cái)?shù)組中所有的值。 |
array_walk() | 對(duì)數(shù)組中的每個(gè)成員應(yīng)用用戶函數(shù)。 |
array_walk_recursive() | 對(duì)數(shù)組中的每個(gè)成員遞歸地應(yīng)用用戶函數(shù)。 |
arsort() | 對(duì)關(guān)聯(lián)數(shù)組按照鍵值進(jìn)行降序排序。 |
asort() | 對(duì)關(guān)聯(lián)數(shù)組按照鍵值進(jìn)行升序排序。 |
compact() | 創(chuàng)建一個(gè)包含變量名和它們的值的數(shù)組。 |
count() | 返回?cái)?shù)組中元素的數(shù)目。 |
current() | 返回?cái)?shù)組中的當(dāng)前元素。 |
each() | 返回?cái)?shù)組中當(dāng)前的鍵/值對(duì)。 |
end() | 將數(shù)組的內(nèi)部指針指向最后一個(gè)元素。 |
extract() | 從數(shù)組中將變量導(dǎo)入到當(dāng)前的符號(hào)表。 |
in_array() | 檢查數(shù)組中是否存在指定的值。 |
key() | 從關(guān)聯(lián)數(shù)組中取得鍵名。 |
krsort() | 對(duì)關(guān)聯(lián)數(shù)組按照鍵名降序排序。 |
ksort() | 對(duì)關(guān)聯(lián)數(shù)組按照鍵名升序排序。 |
list() | 把數(shù)組中的值賦給一些數(shù)組變量。 |
natcasesort() | 用"自然排序"算法對(duì)數(shù)組進(jìn)行不區(qū)分大小寫字母的排序。 |
natsort() | 用"自然排序"算法對(duì)數(shù)組排序。 |
next() | 將數(shù)組中的內(nèi)部指針向后移動(dòng)一位。 |
pos() | current() 的別名。 |
prev() | 將數(shù)組的內(nèi)部指針倒回一位。 |
range() | 創(chuàng)建一個(gè)包含指定范圍的元素的數(shù)組。 |
reset() | 將數(shù)組的內(nèi)部指針指向第一個(gè)元素。 |
rsort() | 對(duì)數(shù)值數(shù)組進(jìn)行降序排序。 |
shuffle() | 把數(shù)組中的元素按隨機(jī)順序重新排列。 |
sizeof() | count() 的別名。 |
sort() | 對(duì)數(shù)值數(shù)組進(jìn)行升序排序。 |
uasort() | 使用用戶自定義的比較函數(shù)對(duì)數(shù)組中的鍵值進(jìn)行排序。 |
uksort() | 使用用戶自定義的比較函數(shù)對(duì)數(shù)組中的鍵名進(jìn)行排序。 |
usort() | 使用用戶自定義的比較函數(shù)對(duì)數(shù)組進(jìn)行排序。 |
序號(hào) | 常數(shù)和說明 |
---|---|
1 | CASE_LOWER 與array_change_key_case()一起使用可將數(shù)組鍵轉(zhuǎn)換為小寫 |
2 | CASE_UPPER 與array_change_key_case()一起使用可將數(shù)組鍵轉(zhuǎn)換為大寫 |
3 | SORT_ASC 與array_multisort()一起使用以升序排序 |
4 | SORT_DESC 與array_multisort()一起使用以降序排序 |
5 | SORT_REGULAR 默認(rèn)。將每一項(xiàng)按常規(guī)順序排列。(排序時(shí)為原來類型) |
6 | SORT_NUMERIC 將每一項(xiàng)按數(shù)字順序排列。 (排序時(shí)字符串也作為數(shù)字,例如:11<100) |
7 | SORT_STRING 將每一項(xiàng)按字母順序排列。 (排序時(shí)數(shù)字也作為字符串,例如:100<11) |
8 | SORT_LOCALE_STRING 用于根據(jù)當(dāng)前語言環(huán)境將項(xiàng)目作為字符串進(jìn)行比較 |
9 | COUNT_NORMAL |
10 | COUNT_RECURSIVE |
11 | EXTR_OVERWRITE |
12 | EXTR_SKIP |
13 | EXTR_PREFIX_SAME |
14 | EXTR_PREFIX_ALL |
15 | EXTR_PREFIX_INVALID |
16 | EXTR_PREFIX_IF_EXISTS |
17 | EXTR_IF_EXISTS |
18 | EXTR_REFS |