关于php数组函数功能及应用场景的总结

利用工作闲暇时间,做了个总结,可能会有叙述不正确的,望指正,互相进步,持续更正!

1.创建数组
array()
array_fill()     用给定的键值填充数组。
array_fill_keys()     用指定键名的给定键值填充数组。
range()     创建包含指定范围单元的数组。
compact()     创建包含变量名和它们的值的数组。

2.数组排序
array_multisort()     对多个数组或多维数组进行排序。
arsort()     对关联数组按照键值进行降序排序。
asort()     对关联数组按照键值进行升序排序。
krsort()     对数组按照键名逆向排序。
ksort()     对数组按照键名排序。
natcasesort()     用“自然排序”算法对数组进行不区分大小写字母的排序。
natsort()     用“自然排序”算法对数组排序。
rsort()     对数组逆向排序。
sort()     对数组排序。
uasort()     使用用户自定义的比较函数对数组中的键值进行排序。
uksort()     使用用户自定义的比较函数对数组中的键名进行排序。
usort()     使用用户自定义的比较函数对数组进行排序。

shuffle()     将数组打乱。

3.数组遍历
count()     返回数组中元素的数目。
sizeof()     count() 的别名。
current()     返回数组中的当前元素。
foreach()  循环遍历数组
each()     返回数组中当前的键/值对。
end()     将数组的内部指针指向最后一个元素。
list()     把数组中的值赋给一些变量。
next()     将数组中的内部指针向前移动一位。
pos()     current() 的别名。
prev()     将数组的内部指针倒回一位。
reset()     将数组的内部指针指向第一个元素。


4.数组与字符串转换

extract()     从数组中将变量导入到当前的符号表。
implode()   把数组元素以字符分割组合为一个字符串
array_reduce()     通过使用用户自定义函数,以字符串返回数组。(可用作打印数组使用)


5.数组比较

array_diff() 比较数组,返回差集(只比较键值,用于排除第一个参数数组中不需要的参数)。
array_intersect() 比较数组,返回交集(只比较键值,用于查询第一个参数数组中和其他数组一样的地方)。

array_diff_assoc()     比较数组,返回差集(比较键名和键值)。
array_intersect_assoc()     比较数组,返回交集(比较键名和键值)。

array_diff_key()     比较数组,返回差集(只比较键名)。
array_intersect_key()     比较数组,返回交集(只比较键名)。

array_diff_uassoc()     比较数组,返回差集(比较键名和键值,使用用户自定义的键名比较函数)。
array_intersect_uassoc()     比较数组,返回交集(比较键名和键值,使用用户自定义的键名比较函数)。

array_diff_ukey()     比较数组,返回差集(只比较键名,使用用户自定义的键名比较函数)。
array_intersect_ukey()     比较数组,返回交集(只比较键名,使用用户自定义的键名比较函数)。
以下也是数组比较函数,需要自定义函数(如果第一个参数小于等于或大于第二个参数,则比较函数必须返回小于等于或大于 0 的整数。)比较,可能在多维数组中需要用到这个
array_udiff()     比较数组,返回差集(只比较值,使用一个用户自定义的键名比较函数)。
array_udiff_assoc()     比较数组,返回差集(比较键和值,使用内建函数比较键名,使用用户自定义函数比较键值)。
array_udiff_uassoc()     比较数组,返回差集(比较键和值,使用两个用户自定义的键名比较函数)。
array_uintersect()     比较数组,返回交集(只比较值,使用一个用户自定义的键名比较函数)。
array_uintersect_assoc()     比较数组,返回交集(比较键和值,使用内建函数比较键名,使用用户自定义函数比较键值)。
array_uintersect_uassoc()     比较数组,返回交集(比较键和值,使用两个用户自定义的键名比较函数)。

6.数组合并或分割
array_chunk()     把一个数组分割为新的数组块。(可以理解为一维数组变为二维的甚至多维的)
array_combine()     通过合并两个数组来创建一个新数组。(以第一个数组为键,第二个数组为键值合并)
array_merge()     把一个或多个数组合并为一个数组。
array_merge_recursive()     递归地合并一个或多个数组。

7.数组查询
array_column()     返回输入数组中某个单一列的值。(用于在多查询的model层函数结果中,只使用某一列的值,如id)
array_count_values()     用于统计数组中所有值出现的次数。(当数据查询太复杂不好实现数量查询时,可以用这个做数量处理)

array_keys()     返回数组中所有的键名。(返回一个只有一维键的数组)
array_values()     返回数组中所有的值。(将一维的键值替换为数字键值)
array_rand()     返回数组中一个或多个随机的键。

array_unique()     删除数组中的重复值。
array_flip()     交换数组中的键和值。(两次调用可作为删除数组重复键使用)

array_pop()     删除数组的最后一个元素(出栈)。(倒序查询数组)
array_push()     将一个或多个元素插入数组的末尾(入栈)。(可批量向数组增加新成员,并返回数组的元素个数)
array_unshift()     在数组开头插入一个或多个元素。

array_key_exists()     检查指定的键名是否存在于数组中。(可以用来做批量的查询结果的判断)
in_array()     检查数组中是否存在指定的值。
array_keys()     返回数组中所有的键名。
array_reverse()     以相反的顺序返回数组。(反转数组)

array_search()     搜索数组中给定的值并返回键名。(这种功能一般都是数据库查询,根据值查键名,对于批量的数组可能会用到)
array_replace()     使用后面数组的值替换第一个数组的值。(可用于批量修改key=>value型存储)
array_replace_recursive()     递归地使用后面数组的值替换第一个数组的值。(array_replace的升级版,可用于多维)
array_shift()     删除数组中首个元素,并返回被删除元素的值。
array_slice()     返回数组中被选定的部分。(有点像substr)
array_splice()     删除并替换数组中指定的元素。

array_map()     把数组中的每个值发送到用户自定义函数,返回新的值。(统一对数组进行某种运算操作,并返回)


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值