数组的函数总结

醉酒当歌 提交于 2019-12-12 11:02:03

一.数组的基本概念

数组定义:PHP 中的数组实际上是一个有序映射。映射是一种把 values 关联到 keys 的类型。此类型在很多方面做了优化,因此可以把它当成真正的数组,或列表(向量),散列表(是映射的一种实现),字典,集合,栈,队列以及更多可能性。由于数组元素的值也可以是另一个数组,树形结构和多维数组也是允许的。

数组类型:

索引数组 - 带有数字 ID 键的数组

关联数组 - 带有指定的键的数组,每个键关联一个值

多维数组 - 包含一个或多个数组的数组

二.数组的常用函数

1.统计数组下标函数

count()函数,sizeof()函数

语法:count(array,mode),sizeof(array,mode);array表示数组,必须的;mode表示是否需要递归的计算数组中元素个数,不是必需的,默认是0。

2.each()函数

each(array),返回当前元素的键名和键值,并将内部指针向前移动。

返回的数组中包括的四个元素:键名为 0,1,key 和 value。单元 0 和 key 包含有数组单元的键名,1 和 value 包含有数据。

如果内部指针越过了数组范围,本函数将返回 FALSE。

3.list() 函数

list(var1,var2...),函数用于在一次操作中给一组变量赋值。该函数只用于数字索引的数组,且假定数字索引从 0 开始。

4数组元素的排序

正向排序:sort()以升序对数组排序;asort()根据值,以升序对关联数组进行排序; ksort()根据键,以升序对关联数组进行排序。

反向排序:rsort()以降序对数组排序;arsort()根据值,以降序对关联数组进行排序; krsort()根据键,以降序对关联数组进行排序。

5.array_count_values()函数

array_count_values(array),函数用于统计数组中元素出现的次数。

6.current()函数

current(array)函数返回数组中的当前元素的值,每个数组都有一个内部指针指向他的当前单元,初始指向插入到数组中的第一个元素。

7.array_pad()函数

array_pad(array,size,value) 函数将指定数量的带有指定值的元素插入到数组中。如果您将 size 参数设置为负数,该函数会在原始数组之前插入新的元素。如果 size 参数小于原始数组的长度,该函数不会删除任何元素。

8.unset()函数

unset ( mixed $var,[ mixed $... ] )用于销毁指定的变量,$var: 要销毁的变量。

如果在函数中 unset() 一个全局变量,则只是局部变量被销毁,而在调用环境中的变量将保持调用 unset() 之前一样的值。

如果在函数中 unset() 一个通过引用传递的变量,则只是局部变量被销毁,而在调用环境中的变量将保持调用 unset() 之前一样的值。

如果在函数中 unset() 一个静态变量,那么在函数内部此静态变量将被销毁。但是,当再次调用此函数时,此静态变量将被复原为上次被销毁之前的值。

9.array_fill()函数

array_fill(index,number,value)函数用给定的键值填充数组。

index:必需,规定返回数组的起始索引。

number:必需,规定填充的元素的数量,其值必须大于 0。

value:必需,规定用于填充数组的键值。

10.array_combine()函数

array_combine(keys,values)  ,函数通过合并两个数组来创建一个新数组,其中的一个数组元素为键名,另一个数组的元素为键值。键名数组和键值数组的元素个数必须相同。

keys:必需,规定数组的键名。

values:必需,规定数组的键值。

11.array_splice()函数

array_splice(array,start,length,array)函数从数组中移除选定的元素,并用新元素取代它。该函数也将返回包含被移除元素的数组。如果函数没有移除任何元素(length=0),则将从 start 参数的位置插入被替换数组。不保留被替换数组中的键名。

array:必需,规定数组。

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

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

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

12.array_unique函数

array_unique(array $array [, int $sort_flags = SORT_STRING ]) 移除数组中重复的值,接受 array 作为输入并返回没有重复值的新数组。注意键名保留不变。array_unique() 先将值作为字符串排序,然后对每个值只保留第一个遇到的键名,接着忽略所有后面的键名。这并不意味着在未排序的 array 中同一个值的第一个出现的键名会被保留。

sort_flags:可用于修改排序行为。

排序类型标记:

SORT_REGULAR - 按照通常方法比较(不修改类型);

SORT_NUMERIC - 按照数字形式比较;

SORT_STRING - 按照字符串形式比较;

SORT_LOCALE_STRING - 根据当前的本地化设置,按照字符串比较。

13.array_flip()函数

array_flip(array)函数用于反转/交换数组中的键名和对应关联的键值。

14array_search()函数

array_search(value,array,strict)函数在数组中搜索某个键值,并返回对应的键名。

value:必需,规定需要搜素的键值。

array:必需,规定被搜索的数组。

strict:可选,如果该参数被设置为 TRUE,则函数在数组中搜索数据类型和值都一致的元素。可能的值:

true或false - 默认。如果设置为 true,则在数组中检查给定值的类型,数字 5 和字符串 5 是不同的。

 

 

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!