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