php 求两个数组的差集应该注意的事情
2024-08-28 03:53:21
对于 phper 来说 array_diff 这个函数应该知道它的用途,获取两个数组的差集,我理解中的差集是这样的
但是执行下代码会发现结果并不是
<?php
$a = [1,2,3,4,5];
$b = [3,4,5,6,7];
$c = array_diff($a,$b);
print_r($c); //输出 Array ( [0] => 1 [1] => 2 )
我开始以为应该是会输出数组 [1,2,6,7] 才对的但是实际结果却不是,于是去翻下文档:
如图人家说的已经很清楚啦,是将后面的所有数组与 array1 作比较返回 在array1 中但是不在 其他 array 里的值。如果我们一定要实现图一那种求差集的方法的话就要这样做
<?php
$a = [1,2,3,4,5];
$b = [3,4,5,6,7];
$c = array_diff($a,$b);
$d = array_diff($b,$a);
$e = array_merge($c,$d);
print_r($e); // 输出 Array ( [0] => 1 [1] => 2 [2] => 6 [3] => 7 )
最新文章
- 轻量级队列beanstalkd
- caj转pdf
- AStar算法的学习
- js 实现动态key value(JSON字符串注意事项:key和value都要用双引号,官网指定用双引号)
- 关于ActionContext.getContext()的用法心得
- Oracle修改数据表
- Hark的数据结构与算法练习之煎饼排序
- drop,truncate与delete的区别
- Focus相关点滴
- ie6-7 overflow:hidden失效问题的解决方法
- 关闭归档提示:ORA-38774: cannot disable media recovery - flashback database is enabled
- WebApi2官网学习记录---OData中的查询
- oc语言--内存管理
- Holding Bin-Laden Captive!(母函数)
- Bar Codes
- 纯CSS实现各类气球泡泡对话框效果
- 在.NET Framework对于JSON本来就提供了很好的支持
- asp.net core 运用 Redis 配置步骤
- angr初使用(1)
- Clinet/Server在工作线程中刷新页面数据的方法