PHP之数组常用函数

(一)在 PHP 中, array() 函数用于创建数组:

array();

(二)获得数组的长度 - count() 函数:

count() 函数用于返回数组的长度(元素数):

(三)PHP - 数组的排序函数:

  • sort() - 以升序对数组排序
  • rsort() - 以降序对数组排序
  • asort() - 根据值,以升序对关联数组进行排序
  • ksort() - 根据键,以升序对关联数组进行排序
  • arsort() - 根据值,以降序对关联数组进行排序
  • krsort() - 根据键,以降序对关联数组进行排序

(四)与数组索引与值相关的函数

1、array_keys(array):把数组的索引下标合并到一个新数组中;

2、array_values(array):把数组的合并到一个新数组中;

(五)与数据结构相关的函数

3、array_shift(array):删除数组中第一个元素,并返回被删除元素的值,如果键名是数字的;

注释:所有元素都会获得新的键名,从 0 开始,并以 1 递增;

4、array_unshift(array,“value1”,“value2”,...):向数组的开头插入一个或多个元素。该函数会返回数组中元素的个数;

注释:数值键名将从 0 开始,以 1 递增。字符串键名将保持不变。

5、array_push(array,“value1”,“value2”,...):在数组元素的尾部插入一个或多个元素,然后返回新数组的长度;

注释:即使数组中有字符串键名,您添加的元素也始终是数字键。

注释:如果用 array_push() 来给数组增加一个单元,还不如用 $array[] =,因为这样没有调用函数的额外负担。

6、array_pop(array):删除数组中的最后一个元素;

(六)字符串和数组转换函数

7、implode(separator,array):把一个数组拼接成字符串;

separator 可选。规定数组元素之间放置的内容。默认是 ""(空字符串)。
array 必需。要组合为字符串的数组。

8、explode(separator,string,limit):把一个字符串根据指定的字符“炸开”,把字符串分割成数组;

separator 必需。规定在哪里分割字符串。
string 必需。要分割的字符串。
limit

可选。规定所返回的数组元素的数目。

可能的值:

  • 大于 0 - 返回包含最多 limit 个元素的数组
  • 小于 0 - 返回包含除了最后的 -limit 个元素以外的所有元素的数组
  • 0 - 返回包含一个元素的数组

(七)合并数组函数

9、array_merge(array1,array2,array3...):把一个或多个数组合并为一个数组

注释:如果两个或更多个数组元素有相同的键名,则最后的元素会覆盖其他元素(其他元素将删掉)。

(八)返回随机函数函数

10、array_rand(array,number):函数返回数组中的随机键名,或者如果您规定函数返回不只一个键名(number是1以上),则返回包含随机键名的数组。

参数 描述
array 必需。规定数组。
number 可选。规定返回多少随机键名

(九)数组的判断

11、is_array(array):检查是否是数组

12.in_array(search,array,type)搜索数组中是否存在指定的值

参数 描述
search 必需。规定要在数组搜索的值。
array 必需。规定要搜索的数组。
type 可选。如果设置该参数为 true,则检查搜索的数据与数组的值的类型是否相同。

注释:如果给定的值 search 存在于数组 array 中则返回 true。如果第三个参数设置为 true,函数只有在元素存在于数组中且数据类型与给定值相同时才返回 true。

注释:如果没有在数组中找到参数,函数返回 false。

注释:如果 search 参数是字符串,且 type 参数设置为 true,则搜索区分大小写。

(十)数组替换

13.array_replace(array1,array2,array3...) :函数使用后面数组的值替换第一个数组的值。

参数 描述
array1 必需。规定数组。
array2 可选。指定要替换 array1 的值的数组。
array3,... 可选。指定多个要替换 array1 和 array2, ... 的值的数组。后面数组的值将覆盖之前数组的值。

注释:如果一个键存在于第一个数组 array1 同时也存在于第二个数组 array2,第一个数组 array1 中的值将被第二个数组 array2 中的值替换。如果一个键仅存在于第一个数组 array1,它将保持不变。(详见下面的实例 1)

注释:如果一个键存在于第二个数组 array2,但是不存在于第一个数组 array1,则会在第一个数组 array1 中创建这个元素。(详见下面的实例 2)

(十 一)返回数组中被选定的部分

14.array_slice(array,start,length,preserve):在数组中根据条件取出一段值,并返回。

array 必需。规定数组。
start

必需。数值。规定取出元素的开始位置。 0 = 第一个元素。

如果该值设置为正数,则从前往后开始取。

如果该值设置为负数,则从后向前取 start 绝对值。 -2 意味着从数组的倒数第二个元素开始。

length

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

如果该值设置为整数,则返回该数量的元素。

如果该值设置为负数,则函数将在举例数组末端这么远的地方终止取出。

如果该值未设置,则返回从 start 参数设置的位置开始直到数组末端的所有元素。

preserve

可选。规定函数是保留键名还是重置键名。可能的值:

  • true - 保留键名
  • false - 默认。重置键名

注释:如果数组有字符串键,所返回的数组将保留键名。

(十 二)删除并替换数组中指定的元素

15.array_splice(array,start,length,array) :函数从数组中移除选定的元素,并用新元素取代它。该函数也将返回包含被移除元素的数组。

array 必需。规定数组。
start

必需。数值。规定删除元素的开始位置。

  • 0 = 第一个元素。
  • 如果该值设置为正数,则从数组中该值指定的偏移量开始移除。
  • 如果该值设置为负数,则从数组末端倒数该值指定的偏移量开始移除。
  • -2 意味着从数组的倒数第二个元素开始。
length

可选。数值。规定被移除的元素个数,也是被返回数组的长度。

  • 如果该值设置为正数,则移除该数量的元素。
  • 如果该值设置为负数,则移除从 start 到数组末端倒数 length 为止中间所有的元素。
  • 如果该值未设置,则移除从 start 参数设置的位置开始直到数组末端的所有元素。
array

可选。规定带有要插入原始数组中元素的数组。

如果只有一个元素,则可以设置为字符串,不需要设置为数组。

提示:如果函数没有移除任何元素(length=0),则将从 start 参数的位置插入被替换数组(参见例子 2)。

注释:不保留被替换数组中的键名。

注释:array_splice() 函数与 array_slice() 函数类似,选择数组中的一系列元素,但不返回,而是删除它们并用其它值代替。

如果提供了第四个参数,则之前选中的那些元素将被第四个参数指定的数组取代。

最后生成的数组将会返回。

(十 三)返回数组中所有值的和

16.array_sum(array): 返回数组中所有值的和。

如果所有值都是整数,则返回一个整数值。如果其中有一个或多个值是浮点数,则返回浮点数。

猜你喜欢

转载自blog.csdn.net/zdklhh/article/details/89534739