- 1、本文档共22页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PHP数组函数讲解
我把数组的函数,进行了简单的分类,这样能更清晰一些1.键名变成大写或者小写:array_change_key_case($arr,CASE_UPPER/CASE_LOWER);upper就代表转成大写,lower就代表转成小写其实数组的键名是分大小写的,如果说,转换之后有的键重复了,那么前面的键名会被后面的覆盖。2.分割数组:array_chunk($arr,数量,true/false),把数组按个数分,每组xxx个元素分割,把原数组的元素分配到小组中,如果元素组不够平均分摊,那么确保能平均分的平均分,剩下的可以缺;最后一项为真,那么保留原数组的键名,假的话就不保留,形成一个新数组3.合并数组:(1)将两个数组的值,一个作为新数组的键名,一个作为数组的键值,组合成新数组:array_combine($arr1,$arr2);$arr1的值,形成新数组的键,$arr2的值,形成新数组的值。注意:$arr1和$arr2的个数必须一致,否则报错。(2)将多个数组捏成一个数组:array_merge($arr1,$arr2,$arr3....);多个数组的时候,如果原来的键名不是整形,那么会保留下来,如有冲突,则最后的元素会覆盖其他元素;如果原来的键值有整形,那么新数组会把所有整形的键名打破,重新从0开始排。一个数组的时候,如果里面没有整形,那么新数组和元素组一样;如果有整形,那么把键名打碎重组。array_merge对于键名冲突的情况,采取的是覆盖的策略。(3)array_merge_recursive($arr1,$arr2,$arr3....);与array_merge唯一不同的地方就是,他对于冲突的键名,采取的办法是,将所有键名相同的值,归拢成一个数组,而且里面的键名从0开始定义,保留每一个值。recursive是递归的意思。4.求差值:(1)比较几个数组之间的值,返回他们的差值:array_diff($arr1,$arr2,$arr3....);这个差值代表:先比较$arr1和$arr2,从$arr1中删去$arr2中和$arr1相同的值的部分;再比较$arr1和$arr3,同样的从$arr1删去相同的部分;以此类推,形成新的数组,键和值都是没有被删去的,原样保留。(2)比较几个数组之间的值,返回他们的差值(使用自定义函数比较键名):array_udiff($arr1,$arr2,$arr3....,functionname);(3)比较几个数组之间的键,返回他们的差值:array_diff_key($arr1,$arr2,$arr3....);与array_diff()类似,但是比较的是值。(4)比较几个数组之间的键和值,返回他们的差值:array_diff_assoc($arr1,$arr2,$arr3....);这个要比较键和值,两个数组的键和值都相同时才可以删去。(5)比较几个数组之间的键和值,返回他们的差值(使用自定义函数比较键名):array_diff_uassoc($arr1,$arr2,$arr3....,functionname);比较键和值,使用用户自定义的函数来求差值(6)比较几个数组之间的键和值,返回他们的差值(使用内建函数比较键名,使用自定义函数比较键值):array_udiff_assoc($arr1,$arr2,$arr3....,functionname);(7)比较几个数组之间的键和值,返回他们的差值(使用自定义函数比较键名和键值):array_udiff_uassoc($arr1,$arr2,$arr3....,functionname1,functionname2);5.填充(1)创建一个数组,用一个值来填充:$arr = array_fill(索引起始,值的个数,值);索引起始只能是数字,但是可以是小数、负数,值的个数必须是正数。最后形成的数组,所有的值都是一样的。(2)创建一个数组,用一个数组作为键名,一个值作为键值来填充:$arr = array_fill_key($arr,值);新数组的键名是原来$arr中的值,值都是新设定的值,而且都是一样的。(3)将一定数量的特定值填充进已知数组:$newarr = array_pad($arr,个数,插入的值);其中那个个数代表了插入之后新数组的个数,这个值可以是浮点型,他会自动转换成整形,当他是正的时候,代表从后面插入新的值;当他是负的时候,代表他从前面插入新的值;当这个值小于原数组本身元素的个数的时候,填充失败,没什么变化。6.用回调函数过滤数组中的元素:array_filter($arr,callbackfunciton);filter是过滤的意思。7.求交集:(1)比较几个数组之间的键值,求交集:array_intersect($a
文档评论(0)