请知悉:本文最近一次更新为 10年 前,文中内容可能已经过时。

Ctrl+F,检索你要查找的函数。页面很长。 PHP:指示支持该函数的最早的PHP版本。

函数 描述 参数介绍
array() 创建数组。
array(key=>value)

参数 描述
key 可选。规定key,类型是数值或字符串。如果未设置,则生成整数类型的key。
value 必需。规定值。
array_change_key_case() 将数组的所有的KEY都转换为大写或小写。
array_change_key_case(array,case)

参数 描述
array 必需。规定要使用的数组。
case

可选。可能的值:

  • CASE_LOWER-默认值。以小写字母返回数组的键。
  • CASE_UPPER-以大写字母返回数组的键。
array_chunk() 把一个数组分割为新的数组块。
array_chunk(array,size,preserve_key)

参数 描述
array 必需。规定要使用的数组。
size 必需。规定每个新数组包含多少个元素。
preserve_key

可选。可能的值:

  • true-保留原始数组中的键名。
  • false-默认。每个结果数组使用从零开始的新数组索引。
array_combine() 通过合并两个数组来创建一个新数组。
array_combine(array1,array2)

参数 描述
array1 必需。规定键名。
array2 必需。规定值。
array_count_values() 用于统计数组中所有值出现的次数。
array_count_values(array)

参数 描述
array 必需。规定输入的数组。
array_diff() 返回两个数组的差集数组。
array_diff(array1,array2,array3...)

参数 描述
array1 必需。与其他数组进行比较的第一个数组。
array2 必需。与第一个数组进行比较的数组。
array3 可选。与第一个数组进行比较的数组。
array_diff_assoc() 比较键名和键值,并返回两个数组的差集数组。
array_diff_assoc(array1,array2,array3...)

参数 描述
array1 必需。与其他数组进行比较的第一个数组。
array2 必需。与第一个数组进行比较的数组。
array3 可选。与第一个数组进行比较的数组。可以有多个。
array_diff_key() 比较键名,并返回两个数组的差集数组。
array_diff_key(array1,array2,array3...)

参数 描述
array1 必需。与其他数组进行比较的第一个数组。
array2 必需。与第一个数组进行比较的数组。
array3 可选。与第一个数组进行比较的数组。可以有多个。
array_diff_uassoc() 通过用户提供的回调函数做索引检查来计算数组的差集。
array_diff_uassoc(array1,array2,array3...,function)

参数 描述
array1 必需。与其他数组进行比较的第一个数组。
array2 必需。与第一个数组进行比较的数组。
array3 可选。与第一个数组进行比较的数组。可以有多个。
function 必需。用户自定义函数的名称。
array_diff_ukey() 用回调函数对键名比较计算数组的差集。
array_diff_ukey(array1,array2,array3...,function)

参数 描述
array1 必需。与其他数组进行比较的第一个数组。
array2 必需。与第一个数组进行比较的数组。
array3 可选。与第一个数组进行比较的数组。可以有多个。
function 必需。用户自定义函数的名称。
array_fill() 用给定的值填充数组。
array_fill(start,number,value)

参数 描述
start 必需。数值,规定键的起始索引。
number 必需。数值,规定填充的数量,其值必须大于0。
value 必需。规定要插入的值。
array_filter() 用回调函数过滤数组中的元素。
array_filter(array,function)

参数 描述
array 必需。规定输入的数组。
function 必需。自定义函数的名称。
array_flip() 交换数组中的键和值。
array_flip(array)

参数 描述
array 必需。规定输入的数组。
array_intersect() 计算数组的交集。
array_intersect(array1,array2,array3...)

参数 描述
array1 必需。与其他数组进行比较的第一个数组。
array2 必需。与第一个数组进行比较的数组。
array3 可选。与第一个数组进行比较的数组。可以有多个。
array_intersect_assoc() 比较键名和键值,并返回两个数组的交集数组。
array_intersect_assoc(array1,array2,array3...)

参数 描述
array1 必需。与其他数组进行比较的第一个数组。
array2 必需。与第一个数组进行比较的数组。
array3 可选。与第一个数组进行比较的数组。可以有多个。
array_intersect_key() 使用键名比较计算数组的交集。
array_intersect_key(array1,array2,array3...)

参数 描述
array1 必需。与其他数组进行比较的第一个数组。
array2 必需。与第一个数组进行比较的数组。
array3 可选。与第一个数组进行比较的数组。可以有多个。
array_intersect_uassoc() 带索引检查计算数组的交集,用回调函数比较索引。
array_intersect_uassoc(array1,array2,array3...,function)

参数 描述
array1 必需。与其他数组进行比较的第一个数组。
array2 必需。与第一个数组进行比较的数组。
array3 可选。与第一个数组进行比较的数组。可以有多个。
function 用户自定义函数的名称。
array_intersect_ukey() 用回调函数比较键名来计算数组的交集。
array_intersect_uassoc(array1,array2,array3...,function)

参数 描述
array1 必需。与其他数组进行比较的第一个数组。
array2 必需。与第一个数组进行比较的数组。
array3 可选。与第一个数组进行比较的数组。可以有多个。
function 用户自定义函数的名称。
array_key_exists() 检查给定的键名或索引是否存在于数组中。
array_key_exists(key,array)

参数 描述
key 必需。规定键名。
array 必需。规定输入的数组。
array_keys() 返回数组中所有的键名。
array_keys(array,value)

参数 描述
array 必需。规定输入的数组。
value 可选。指定值的索引(键)。
strict

可选。与value参数一起使用。可能的值:

  • true-根据类型返回带有指定值的键名。
  • false-默认值。不依赖类型。
array_map() 将回调函数作用到给定数组的单元上。
array_map(function,array1,array2,array3...)

参数 描述
function 必需。用户自定义函数的名称,或者是null。
array1 必需。规定数组。
array2 可选。规定数组。
array3 可选。规定数组。
array_merge() 把一个或多个数组合并为一个数组。
array_merge(array1,array2,array3...)

参数 描述
array1 必需。输入的第一个数组。
array2 必需。输入的第二个数组。
array3 可选。可指定的多个输入数组。
array_merge_recursive() 递归地合并一个或多个数组。
array_merge_recursive(array1,array2,array3...)

参数 描述
array1 必需。输入的第一个数组。
array2 必需。输入的第二个数组。
array3 可选。可指定的多个输入数组。
array_multisort() 对多个数组或多维数组进行排序。
array_multisort(array1,sorting order,sorting type,array2,array3...)

参数 描述
array1 必需。规定输入的数组。
sorting order 可选。规定排列顺序。可能的值是SORT_ASC和SORT_DESC。
sorting type 可选。规定排序类型。可能的值是SORT_REGULAR、SORT_NUMERIC和SORT_STRING。
array2 可选。规定输入的数组。
array3 可选。规定输入的数组。
array_pad() 用值将数组填补到指定长度。
array_pad(array,size,value)

参数 描述
array 必需。规定数组。
size 必需。指定的长度。整数则填补到右侧,负数则填补到左侧。
value 必需。用来填补的值。
array_pop() 将数组最后一个单元弹出(出栈)。
array_pop(array)

参数 描述
array 必需。规定输入的数组参数。
array_product() 计算数组中所有值的乘积。
array_product(array)

参数 描述
array 必需。规定输入的数组参数。
array_push() 将一个或多个单元(元素)压入数组的末尾(入栈)。
array_push(array,value1,value2...)

参数 描述
array 必需。规定一个数组。
value1 必需。规定要添加的值。
value2 可选。规定要添加的值。
array_rand() 从数组中随机选出一个或多个元素,并返回。
array_rand(array,number)

参数 描述
array 必需。规定输入的数组参数。
number 可选。默认是1。规定返回多少个随机的元素。
array_reduce() 用回调函数迭代地将数组简化为单一的值。
array_reduce(array,function,initial)

参数 描述
array 必需。规定输入的数组。
function 必需。规定自定义回调函数的名称。
initial 可选。如果规定了该参数,该参数将作为数组中的第一个值来处理。
array_reverse() 将原数组中的元素顺序翻转,创建新的数组并返回。
array_reverse(array,preserve)

参数 描述
array 必需。规定数组。
preserve

可选。规定是否保留原始数组的键名。可能的值:true和false。

这个参数是PHP 4.0.3中新加的。

array_search() 在数组中搜索给定的值,如果成功则返回相应的键名。
array_search(value,array,strict)

参数 描述
value 必需。规定在数组中搜索的值。
array 必需。被搜索的数组。
strict

可选。可能的值:

  • true
  • false-默认

如果值设置为true,还将在数组中检查给定值的类型。(参见例子2)

array_shift() 删除数组中的第一个元素,并返回被删除元素的值。
array_shift(array)

参数 描述
array 必需。规定输入的数组。
array_slice() 在数组中根据条件取出一段值,并返回。
array_slice(array,offset,length,preserve)

参数 描述
array 必需。规定输入的数组。
offset

必需。数值。规定取出元素的开始位置。

如果是正数,则从前往后开始取,如果是负值,从后向前取offset绝对值。

length

可选。数值。规定被返回数组的长度。

如果length为正,则返回该数量的元素。

如果length为负,则序列将终止在距离数组末端这么远的地方。

如果省略,则序列将从offset开始直到array的末端。

preserve

可选。可能的值:

  • true-保留键
  • false-默认-重置键
array_splice() 把数组中的一部分去掉并用其它值取代。
array_splice(array,offset,length,array)

参数 描述
array 必需。规定数组。
offset 必需。数值。如果offset为正,则从输入数组中该值指定的偏移量开始移除。如果offset为负,则从输入数组末尾倒数该值指定的偏移量开始移除。
length 可选。数值。如果省略该参数,则移除数组中从offset到结尾的所有部分。如果指定了length并且为正值,则移除这么多元素。如果指定了length且为负值,则移除从offset到数组末尾倒数length为止中间所有的元素。
array 被移除的元素由此数组中的元素替代。如果没有移除任何值,则此数组中的元素将插入到指定位置。
array_sum() 计算数组中所有值的和。
array_sum(array)

参数 描述
array 必需。规定输入的数组。
array_udiff() 用回调函数比较数据来计算数组的差集。
array_udiff(array1,array2,array3...,function)

参数 描述
array1 必需。被比较的数组。
array2 必需。用来做比较的数组。
array3 可选。用来做比较的数组,可有多个。
function 必需。自定义的比较回调函数。
array_udiff_assoc() 带索引检查计算数组的差集,用回调函数比较数据。
array_udiff_assoc(array1,array2,array3...,function)

参数 描述
array1 必需。被比较的数组。
array2 必需。用来做比较的数组。
array3 可选。用来做比较的数组,可有多个。
function 可选。自定义的比较回调函数。
array_udiff_uassoc() 带索引检查计算数组的差集,用回调函数比较数据和索引。
array_udiff_uassoc(array1,array2,array3...,function1,function2)

参数 描述
array1 必需。被比较的数组。
array2 必需。用来做比较的数组。
array3 可选。用来做比较的数组,可有多个。
function1 必需。比较键名的自定义函数。
function2 必需。比较值的自定义函数。
array_uintersect() 计算数组的交集,用回调函数比较数据。
array_uintersect(array1,array2,array3...,function)

参数 描述
array1 必需。被比较的数组。
array2 必需。用来做比较的数组。
array3 可选。用来做比较的数组,可有多个。
function 必需。自定义函数的名称。
array_uintersect_assoc() 带索引检查计算数组的交集,用回调函数比较数据。
array_uintersect_assoc(array1,array2,array3...,function)

参数 描述
array1 必需。被比较的数组。
array2 必需。用来做比较的数组。
array3 可选。用来做比较的数组,可有多个。
function 必需。自定义函数的名称。
array_uintersect_uassoc() 带索引检查计算数组的交集,用回调函数比较数据和索引。
array_uintersect_uassoc(array1,array2,array3...,function1,function2)

参数 描述
array1 必需。被比较的数组。
array2 必需。用来做比较的数组。
array3 可选。用来做比较的数组,可有多个。
function1 必需。比较键名的自定义函数。
function2 必需。比较键值的自定义函数。
array_unique() 删除数组中重复的值。
array_unique(array)

参数 描述
array 必需。规定输入的数组。
array_unshift() 在数组开头插入一个或多个元素。
array_unshift(array,value1,value2,value3...)

参数 描述
array 必需。规定输入的数组。
value1 必需。规定插入的值。
value2 可选。规定插入的值。
value3 可选。规定插入的值。
array_values() 返回数组中所有的值。
array_values(array)

参数 描述
array 必需。规定给定的数组。
array_walk() 对数组中的每个成员应用用户函数。
array_walk(array,function,userdata...)

参数 描述
array 必需。规定数组。
function 必需。用户自定义函数的名称。
userdata 可选。用户输入的值,可作为回调函数的参数。
array_walk_recursive() 对数组中的每个成员递归地应用用户函数。
array_walk_recursive(array,function,userdata)

参数 描述
array 必需。规定数组。
function 必需。用户自定义函数的名称。
userdata 可选。用户输入的值,可作为回调函数的参数。
arsort() 对数组进行逆向排序并保持索引关系。
arsort(array,sorttype)

参数 描述
array 必需。输入的数组。
sorttype

可选。规定如何排列数组的值。可能的值:

  • SORT_REGULAR-默认。以它们原来的类型进行处理(不改变类型)。
  • SORT_NUMERIC-把值作为数字来处理
  • SORT_STRING-把值作为字符串来处理
  • SORT_LOCALE_STRING-把值作为字符串来处理,基于本地设置*
asort() 对数组进行排序并保持索引关系。
asort(array,sorttype)

参数 描述
array 必需。输入的数组。
sorttype

可选。规定如何排列数组的值。可能的值:

  • SORT_REGULAR-默认。以它们原来的类型进行处理(不改变类型)。
  • SORT_NUMERIC-把值作为数字来处理
  • SORT_STRING-把值作为字符串来处理
  • SORT_LOCALE_STRING-把值作为字符串来处理,基于本地设置*
compact() 建立一个数组,包括变量名和它们的值。
compact(var1,var2...)

参数 描述
var1 必需。可以是带有变量名的字符串,或者是一个变量数组。
var2 可选。可以是带有变量名的字符串,或者是一个变量数组。允许多个参数。
count() 计算数组中的元素数目或对象中的属性个数。
count(array,mode)

参数 描述
array 必需。规定要计数的数组或对象。
mode

可选。规定函数的模式。可能的值:

  • 0-默认。不检测多维数组(数组中的数组)。
  • 1-检测多维数组。

注释:该参数是PHP 4.2中加入的。

current() 返回数组中的当前元素。
current(array)

参数 描述
array 必需。规定要使用的数组。
each() 返回数组中当前的键/值对并将数组指针向前移动一步。
each(array)

参数 描述
array 必需。规定要使用的数组。
end() 将数组的内部指针指向最后一个元素。
end(array)

参数 描述
array 必需。规定要使用的数组。
extract() 从数组中将变量导入到当前的符号表。
extract(array,extract_rules,prefix)

参数 描述
array 必需。规定要使用的输入。
extract_rules

可选。extract()函数将检查每个键名是否为合法的变量名,同时也检查和符号表中的变量名是否冲突。

对非法、数字和冲突的键名的处理将根据此参数决定。可以是以下值之一:

可能的值:

  • EXTR_OVERWRITE-默认。如果有冲突,则覆盖已有的变量。
  • EXTR_SKIP-如果有冲突,不覆盖已有的变量。(忽略数组中同名的元素)
  • EXTR_PREFIX_SAME-如果有冲突,在变量名前加上前缀prefix。自PHP 4.0.5起,这也包括了对数字索引的处理。
  • EXTR_PREFIX_ALL-给所有变量名加上前缀prefix(第三个参数)。
  • EXTR_PREFIX_INVALID-仅在非法或数字变量名前加上前缀prefix。本标记是PHP 4.0.5新加的。
  • EXTR_IF_EXISTS-仅在当前符号表中已有同名变量时,覆盖它们的值。其它的都不处理。可以用在已经定义了一组合法的变量,然后要从一个数组例如$_REQUEST中提取值覆盖这些变量的场合。本标记是PHP 4.2.0新加的。
  • EXTR_PREFIX_IF_EXISTS-仅在当前符号表中已有同名变量时,建立附加了前缀的变量名,其它的都不处理。本标记是PHP 4.2.0新加的。
  • EXTR_REFS-将变量作为引用提取。这有力地表明了导入的变量仍然引用了var_array参数的值。可以单独使用这个标志或者在extract_type中用OR与其它任何标志结合使用。本标记是PHP 4.3.0新加的。
prefix

可选。请注意prefix仅在extract_type的值是EXTR_PREFIX_SAME,EXTR_PREFIX_ALL,EXTR_PREFIX_INVALID或EXTR_PREFIX_IF_EXISTS时需要。如果附加了前缀后的结果不是合法的变量名,将不会导入到符号表中。

前缀和数组键名之间会自动加上一个下划线。

in_array() 检查数组中是否存在指定的值。
in_array(value,array,type)

参数 描述
value 必需。规定要在数组搜索的值。
array 必需。规定要搜索的数组。
type 可选。如果设置该参数为true,则检查搜索的数据与数组的值的类型是否相同。
key() 从关联数组中取得键名。
key(array)

参数 描述
array 必需。规定要使用的数组。
krsort() 对数组按照键名逆向排序。
krsort(array,sorttype)

参数 描述
array 必需。规定要排序的数组。
sorttype

可选。规定如何排列数组的值。可能的值:

  • SORT_REGULAR-默认。以它们原来的类型进行处理(不改变类型)。
  • SORT_NUMERIC-把值作为数字来处理
  • SORT_STRING-把值作为字符串来处理
  • SORT_LOCALE_STRING-把值作为字符串来处理,基于本地设置*
ksort() 对数组按照键名排序。
ksort(array,sorttype)

参数 描述
array 必需。规定要排序的数组。
sorttype

可选。规定如何排列数组的值。可能的值:

  • SORT_REGULAR-默认。以它们原来的类型进行处理(不改变类型)。
  • SORT_NUMERIC-把值作为数字来处理
  • SORT_STRING-把值作为字符串来处理
  • SORT_LOCALE_STRING-把值作为字符串来处理,基于本地设置*
list() 把数组中的值赋给一些变量。
list(var1,var2...)

参数 描述
var1 必需。第一个需要赋值的变量。
var2 可选。可以有多个变量。
natcasesort() 用“自然排序”算法对数组进行不区分大小写字母的排序。
natcasesort(array)

参数 描述
array 必需。规定要进行排序的数组。
natsort() 用“自然排序”算法对数组排序。
natsort(array)

参数 描述
array 必需。规定要进行排序的数组。
next() 将数组中的内部指针向前移动一位。
next(array)

参数 描述
array 必需。规定要使用的数组。
pos() current()的别名。
pos(array)

参数 描述
array 必需。规定要使用的数组。
prev() 将数组的内部指针倒回一位。
prev(array)

参数 描述
array 必需。规定要使用的数组。
range() 建立一个包含指定范围的元素的数组。
range(first,second,step)

参数 描述
first 必需。规定数组元素的最小值。
second 必需。规定数组元素的最大值。
step

可选。规定元素之间的步进制。默认是1。

注释:该参数是PHP 5中加入的。

reset() 将数组的内部指针指向第一个元素。
reset(array)

参数 描述
array 必需。规定要使用的数组。
rsort() 对数组逆向排序。
rsort(array,sorttype)

参数 描述
array 必需。输入的数组。
sorttype

可选。规定如何排列数组的值。可能的值:

  • SORT_REGULAR-默认。以它们原来的类型进行处理(不改变类型)。
  • SORT_NUMERIC-把值作为数字来处理
  • SORT_STRING-把值作为字符串来处理
  • SORT_LOCALE_STRING-把值作为字符串来处理,基于本地设置*
shuffle() 把数组中的元素按随机顺序重新排列。
shuffle(array)

参数 描述
array 必需。规定要使用的数组。
sizeof() count()的别名。
sizeof(array,mode)

参数 描述
array 必需。规定要计数的数组或对象。
mode

可选。规定函数的模式。可能的值:

  • 0-默认。不检测多维数组(数组中的数组)。
  • 1-检测多维数组。

注释:该参数是PHP 4.2中加入的。

sort() 对数组排序。
sort(array,sorttype)

参数 描述
array 必需。输入的数组。
sorttype

可选。规定如何排列数组的值。可能的值:

  • SORT_REGULAR-默认。以它们原来的类型进行处理(不改变类型)。
  • SORT_NUMERIC-把值作为数字来处理
  • SORT_STRING-把值作为字符串来处理
  • SORT_LOCALE_STRING-把值作为字符串来处理,基于本地设置*
uasort() 使用用户自定义的比较函数对数组中的值进行排序并保持索引关联。
uasort(array,sorttype)

参数 描述
array 必需。规定要排序的数组。
function

必需。用户自定义的函数。

函数必须设计为返回-1,0,或1,并应该接受两个供比较的参数,同时以类似下面这样的方式来工作:

  • 如果a=b,返回0
  • 如果a<b,返回1
  • 如果a>b,返回-1
uksort() 使用用户自定义的比较函数对数组中的键名进行排序。
uksort(array,sorttype)

参数 描述
array 必需。规定要排序的数组。
function

必需。用户自定义的函数。

函数必须设计为返回-1,0,或1,并应该接受两个供比较的参数,同时以类似下面这样的方式来工作:

  • 如果a=b,返回0
  • 如果a>b,返回1
  • 如果a<b,返回-1
usort() 使用用户自定义的比较函数对数组中的值进行排序。
usort(array,sorttype)

参数 描述
array 必需。规定要排序的数组。
function

必需。用户自定义的函数。

函数必须设计为返回-1,0,或1,并应该接受两个供比较的参数,同时以类似下面这样的方式来工作:

  • 如果a=b,返回0
  • 如果a>b,返回1
  • 如果a<b,返回-1

整理自:https://www.w3school.com.cn/php/php_ref_array.asp


如您从本文得到了有价值的信息或帮助,请考虑扫描文末二维码捐赠和鼓励。

尊重他人劳动成果。转载请务必附上原文链接,我将感激不尽。


与《PHP-数组 array 函数 整理》相关的博文:


留言

avatar
😀
😀😁😂😅😭🤭😋😘🤔😰😱🤪💪👍👎🤝🌹👌