PHP数组函数学习

0.709字数 772阅读 174

有时只是记得某个数组函数却忘掉什么名字,因此把数组函数进行简单的分类梳理

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(使用用户自定义函数比较value)
  • array_udiff_assoc()使用用户自定义函数比较$value
  • array_udiff_uassoc()使用用户自定义函数比较$key, $value

第二类:查找

  • 查找某个键 array_key($array, $search_value = null, $strict = null)
  • 搜索数组中给定的值并返回键名 array_search()

第三类:生成数组

  • array_splice(&array)函数从数组中移除选定的元素,并用新元素取代它。该函数也将返回包含被移除元素的数组;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()根据第二个数组的key替换第一个数组中的value,如果第一个数组没有则创建
  • array_replace_recursive()递归的根据第二个数组的key替换第一个数组中的value,如果第一个数组没有则创建
  • array_shift()返回数组首元素,并删除
  • array_ushift()数组首元素插入
  • array_pop()删除数组的最后一个元素(出栈)
  • array_push()将一个或多个元素插入数组的末尾(入栈)

第五类:排序

  • arsort()
  • asort()
  • krsort()
  • ksort()
  • natsort()
  • rsort()
  • sort()
  • uasort()
  • uksort()
  • usort()

第六类:遍历

推荐阅读更多精彩内容