本文主要和大家分享php数组处理函数详解,希望能帮助到大家。
一、由于数组是由键值和元素值两部分组成,所以说有很多函数是对键值和元素进行操作。
1.array_values($contact):
不保留键名,按照索引,对数组排列
2.array_keys($contact,'可选参数',‘可选参数true/false’):
若设置可选参数,则按照可选参数返回键名,若不设置,直接返回数组的键名,false为不依赖默认参数类型
3.in_array(‘value’,'$contact','可选参数true/false'):
检查数组中是否存在某值,true类型必须完全一致,搜索值若为字符串,设置true后,则区分大小
4.array_search('元素值',$lamp,'可选参数true/false')
true严格变量下标
array_key_exists(‘元素值’,$contact):
5.array_flip($contact):
将数组的键名和元素值互换,如果一个值多次出现,最后一个键名为它的值
6.array_reverse($contact,'可选参数true/false'):
将数组顺序翻转,true保持键名不变
二。数组元素个数有关的函数
1.count($contact,'可选参数0/1'):
统计数组的元素个数,可选参数表示是否递归的检测多维数组,0为不检测,1为检测
2.array_count_values($contact):
统计数组元素出现的次数,输出数组,键名为元素值,原宿职位出现次数
3.array_unique($contact):
删除数组中的重复元素值,重复的元素,键名保留第一个元素的键名
三。使用回调函数处理数组的函数
1.array_filter($contact,'可选项“调用的函数”'):
回调函数返回true,当前数组值保留,最终输出
2.array_walk($contact,'回调函数',‘可选参数’):
回调函数传入两个参数,第一个参数为数组元素值,第二个参数为键名
3.array_map(‘回调函数’,$contact,'之后可选参数数组$contact1'):
当只传入一个数组时,按照回调函数调用输出,多个数组时同理
当回调函数为空时,输出两个数组,长度相同,平行回调即调用第一个数组第一个元素后,调用第二个数组第二个元素,然后依次调用,如果数组长短不同,短的数组用空单元补充
四。数组的排序函数
1.sort()和rsort():
数组内部元素从小到大排序
数组内部元素从大到小排序
抛弃数组元素原有的索引
2.ksort()和Krsort()
根据键名对数组排序
按照键名从小到大排序
按照键名从大到小排序
3.asort()和arsort()
按照元素值排序,保留键名
4.根据自然排序法对数组排序
natsort()和natcasesort()
按照数字从1到9,字母从a到z的排序方法,前者忽略键名,后者保留键名,并且前者区分大小写,后者不区分大小写
5.usort():
用户自定义
6.多维数组的排序:
array_multisort(),根据数组的值不断地进行排序
五。拆分,合并,分解,结合数组
1.array_slice($contact,'取出元素的初始值','可选择参数:取出元素的长度',‘可选择参数:true/false’):
取出元素的初始值若为正值,则从前往往后取,负数则从前向后取,最后一个元素为-1,则从负数值开始往后取。
true将保留键名,
2.array_splice($contact,'删除元素的初始值',‘删除元素的长度’,‘可选参数:替换数组’):
初始值如果是正数,则从此值开始删除,负数跟slice()同理,如设置替换数组,则将替换数组插入删除的位置。
3.array_combine($contact1,$contact2):
两个数组必须有相同数目的元素,第一个数组元素为键值,第二个数组元素为元素值
4.array_merge($contact1,$contact2):
第一个参数为必选参数,仅有一个会以索引数组的形式输出,多个数组合并,键名重复,后面的覆盖前面的
5.array_intersect($contact1,$contact2):
数组的交集,键名不变,仅数组值进行比较,输出第一个数组中二者共同有的
6.array_diff($contact1,$contact2,$contact3):
数组的差集,第一个数组和第二个参数为必选的参数,第三个参数乃至于以后可选,输出对一个数组中有,其他数组没有的值。
相关推荐:
Atas ialah kandungan terperinci php数组处理函数详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!