资讯专栏INFORMATION COLUMN

求数组差/交集函数-php数组函数(二)

ChristmasBoy / 1348人阅读

摘要:求数组差集函数函数只检查了多维数组中的一维。自定义函数必须返回一个小于零,等于零,或大于零的整数。用自定义函数比较的值,函数参数为数组的值。

求数组差集函数

函数只检查了多维数组中的一维。可以用 array_diff($array1[0], $array2[0]) 检查更深的维度。

u:自定义函数比较,a(association):同时比较

自定义函数callable $value_compare_func必须返回一个小于零,等于零,或大于零的整数。其中返回零代表两个数相等。

对比数组值的函数
array_diff

对比(===) array1array2···的值(value),返回在 $array1 中但是不在其他 array 里的值,键名保留不变。

array array_diff ( array $array1 , array $array2 [, array $... ] )
array_udiff

用自定义函数比较 $array1, $array2···的值(value),函数参数为数组的。返回在$array1,不在其他array的元素,保持键值关联。

array array_udiff ( array $array1 , array $array2 [, array $... ], callable $value_compare_func )
int value_compare_func(( mixed $a, mixed $b )) //该比较函数必须相应地返回一个小于,等于或大于 0 的整数。
#返回0,意味着两个数相等,即值在两个数组都出现了,所以等于0不返回值。
#根据value_compare_func($a, $b)的参数顺序返回元素,如:value_compare_func($b, $ba),返回在$b不在$a的元素
对比数组键的函数
array_diff_key

对比(===) array1array2···的键(key),所有出现在 $array1 中但是不在其他array中的键(key)的值。

array array_diff_key ( array $array1 , array $array2 [, array $... ] )
array_diff_ukey

用自定义函数比较 $array1, $array2···的,函数参数为数组的,键不同即返回元素。返回在$array1,不在其他array的元素,保持键值关联。

array array_diff_ukey ( array $array1 , array $array2 [, array $... ], callable $key_compare_func )
同时对比
array_diff_assoc

比较 $array1, $array2···的键(key)值(value),返回在$array1,不在其他array的元素,保持键值关联。。

array array_diff_assoc ( array $array1 , array $array2 [, array $... ] )
array_diff_uassoc

用自定义函数比较 $array1, $array2···的键(key)值(value),回调函数参数为数组的,键值都相同时不返回元素。返回在$array1,不在其他array的元素,保持键值关联。

array array_diff_uassoc ( array $array1 , array $array2 [, array $... ], callable $key_compare_func )
array_udiff_assoc

用自定义函数比较 $array1, $array2···的键(key)值(value),回调函数参数为数组的,键值都相同时不返回元素。返回在$array1,不在其他array的元素,保持键值关联。

array array_udiff_assoc ( array $array1 , array $array2 [, array $... ], callable $value_compare_func )
array_udiff_uassoc

用自定义函数比较 $array1, $array2···的键(key)值(value),两个函数参数分别为数组的/。返回在$array1,不在其他array的元素,保持键值关联。

array array_udiff_uassoc ( array $array1 , array $array2 [, array $... ], callable $value_compare_func , callable $key_compare_func )
求数组交集函数

交集函数和差集函数的用法大同小异

对比数组的函数,不比较
array_intersect

计算数组的交集

array_uintersect

计算数组的交集,用回调函数比较数据

对比数组的函数,不比较
array_intersect_key

使用键名比较计算数组的交集

array_intersect_ukey

用回调函数比较键名来计算数组的交集

同时对比数组的函数
array_intersect_assoc

带索引检查计算数组的交集

array_intersect_uassoc

带索引检查计算数组的交集,用回调函数比较索引

array_uintersect_assoc

带索引检查计算数组的交集,用回调函数比较数组值

array_uintersect_uassoc

带索引检查计算数组的交集,用多带带的回调函数比较数据和索引

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/29129.html

相关文章

  • PHP经验总结 - 强大的数组函数

    摘要:简述数据处理是任何程序员都避免不了的,有一套强大的数组处理函数,可以很好帮助处理常见的数据处理问题。结果计划是数组最后一个元素出栈删函数功能把数组最后一个函数去掉。字符串以空格的方式切割,转为数组 简述 数据处理是任何程序员都避免不了的,PHP有一套强大的数组处理函数,可以很好帮助处理常见的数据处理问题。自己的脑子记性不好,经常忘记函数怎样用,所以记下来给自己以后好好翻查,也希望对你们...

    light 评论0 收藏0
  • PHP数组相关函数Demo及归纳

    摘要:源码年来都没有动手跑一跑内置的函数。这一跑才发现平时自鸣得意的那些算法是有原生实现的,顿时有一种啪啪啪被打脸的感觉。希望亡羊补牢,为时不晚吧。下面是从里摘抄的归纳对比片段,希望对你有所启发。 Demo源码 3年来都没有动手跑一跑PHP内置的Array函数。 这一跑才发现平时自鸣得意的那些算法是有原生实现的,顿时有一种啪啪啪被打脸的感觉。 希望亡羊补牢,为时不晚吧。 下面是从Demo里摘...

    shuibo 评论0 收藏0
  • LintCode547/548_数组交集不同解法小结

    摘要:求数组交集不同解法小结声明文章均为本人技术笔记,转载请注明出处求数组交集要求元素不重复,给出两个数组,求二者交集且元素不重复,查找会超时解法一排序二分查找算法超时主要发生在大数组查找过程,因此采用二分查找提升查找效率,交集用保存实现去重解法 LintCode547/548_求数组交集不同解法小结 [TOC] 声明 文章均为本人技术笔记,转载请注明出处:[1] https://segme...

    gxyz 评论0 收藏0
  • 多标签(组)运算

    摘要:代码实现测试代码输出解析标签表达式基础的表达式解析实现了,针对我们的标签表达式多个字符组成一个标签,以及去掉,加上的逻辑,稍作修改测试代码输出后缀表达式转二叉树分析根据后缀表达式的含义,符合表示前面两个元素的运算。用户标签是个数组。 一、概述 标签是精细化运营必不可少的工具,常见的使用场景有标签推送,千人千面的广告展示等。在实际的业务中,标签往往是通过交并差非运算组合在一起使用,比如:...

    Developer 评论0 收藏0
  • 力扣周结03

    摘要:示例输入输出示例输入输出说明输出结果中的每个元素一定是唯一的。示例输入输出示例输入输出说明输出结果中每个元素出现的次数,应与元素在两个数组中出现次数的最小值一致。在完成所有重复项删除操作后返回最终的字符串。 ...

    Render 评论0 收藏0

发表评论

0条评论

ChristmasBoy

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<