有时只是记得某个数组函数却忘掉什么名字,因此把数组函数进行简单的分类梳理
PHP数组函数
以key为键,以value为值,用all代表key=>value
ZERO:蛋疼
-
extract($a,EXTR_PREFIX_ALL,'t');
将数组的$key
,转变为变量 前缀为$t_ (自动添加下划线) - get_defined_vars()获取所有的定义的变量
- compact()创建包含变量名和它们的值的数组。
第一类:比较
交集
- 比较value array_intersect
- 比较all array_intersect_assoc()
- 比较key array_intersect_key()
自定义函数比较取交集(自定义的key比较函数)
- 比较all array_intersect_uassoc()
- 比较key array_intersect_ukey()
- array_uintersect()用一个用户自定义的$key比较函数
- array_intersect_uassoc()用一个用户自定义
$value
比较函数 - array_uintersect_uassoc()用户自定义的
$key,$value
比较函数
差集
- 比较value array_diff()
- 比较all array_diff_assoc()
- 比较key array_diff_key()
自定义函数比较取差集(自定义的key比较函数)
- 比较all array_diff_uassoc()
- 比较key array_diff_ukey()
- array_udiff()两个数组的value)
- array_udiff_assoc()使用用户自定义函数比较
$value
- array_udiff_uassoc()使用用户自定义函数比较
$key, $value
第二类:查找
- 查找某个键
array_key($array, $search_value = null, $strict = null)
- 搜索数组中给定的值并返回键名 array_search()
第三类:生成数组
- array_splice(&array将插入新的元素
- array_splice(array,start,length,preserve)数在数组中根据条件取出一段值,并返回。
- array_slice()函数在数组中根据条件取出一段值
- range(low,high,step)生成某个范围内的数组
- array()
- array_chunk()函数把数组分割为新的数组块,第三个参数:默认不保留原先的键值
- array_values()
- array_column()返回输入数组中某个单一列的值
- array_combine()通过合并两个数组来创建一个新数组:一个数组元素为键名,另一个数组元素为键值
- array_count_values()函数对数组中的所有值进行计数。
-
array_fill($index,$count,$item)
从下标$index
开始,填充$count
个值为$item
-
array_fill_keys($keyArray, $item)
函数使用指定的键和值填充数组。 - array_pad()使用规定的值填充数组到某个数量
- array_merge()合并数组,后面的将会覆盖前面的;使用 +前面的覆盖后面的
第四类:操作数组
- array_filter()过滤数组
- array_flip()反转数组中所有的键以及它们关联的值;异常情况会报错
- array_sum()计算数组中所有值的和。
- array_product()计算数组中所有值的乘积。
- array_reverse()相反的顺序返回数组
- array_reduce()用自定义的函数拼接数组返回字符串
- array_replace()根据第二个数组的value,如果第一个数组没有则创建
- array_replace_recursive()递归的根据第二个数组的value,如果第一个数组没有则创建
- array_shift()返回数组首元素,并删除
- array_ushift()数组首元素插入
- array_pop()删除数组的最后一个元素(出栈)
- array_push()将一个或多个元素插入数组的末尾(入栈)
第五类:排序
- arsort()
- asort()
- krsort()
- ksort()
- natsort()
- rsort()
- sort()
- uasort()
- uksort()
- usort()
第六类:遍历
- array_walk()
- array_walk_recursive()
- array_map()
网友评论