PHP数组的交集array_intersect(),array_intersect_assoc(),array_inter_key()函数的小问题


Posted in PHP onMay 29, 2011

返回一个交集共有元素的数组(只是数组值得比较)、array_intersect_assoc()函数是将键值和值绑定,一起比较交集部分、array_intersect_key()函数是将两个数组的键值进行比较,返回键值交集的数组。
但实际应用中也遇到了一些小问题,正如下:

实例:

<?PHP 
$array = array("red"=>"Red","green"=>"red4","Red15"=>"Red",7=>"Level","Width"=>"Red","azzzz1"=>"art","peak"=>158); 
$array1 = array("red"=>"Red2","greena"=>"red","Red15"=>"Red",7=>"Level","Width"=>"Red","azzzz"=>"art","peak"=>158); 
$num = array_intersect($array,$array1); 
print_r ($num); 
echo "<br />"; 
$num = array_intersect_assoc($array,$array1); 
print_r($num); 
echo "<br />"; 
$num = array_intersect_key($array,$array1); 
print_r ($num); 
?>

 运行结果:
Array ( [red] => Red [Red15] => Red [7] => Level [Width] => Red [azzzz1] => art [peak] => 158 ) 
Array ( [Red15] => Red [7] => Level [Width] => Red [peak] => 158 ) 
Array ( [red] => Red [Red15] => Red [7] => Level [Width] => Red [peak] => 158 )

总结:

1.array_intersect()函数进行的比较只有数组值的比较,而且存在如”Red“和”Red2“比较时会返回"Red",反之则不会返回"Red2";

2.array_intersect_assoc()函数是将数组的值与键值一起比较,而且不会存在array_intersect的情况,适用于较严格的比较;

3.array_intersect_key()函数适用于比较两个数组键值的交集,返回的并不只有键值,而是键值和对应的数组值。

PHP 相关文章推荐
漂亮但不安全的CTB
Oct 09 PHP
利用static实现表格的颜色隔行显示
Oct 09 PHP
php 什么是PEAR?
Mar 19 PHP
php in_array 函数使用说明与in_array需要注意的地方说明
Apr 13 PHP
解析yii数据库的增删查改
Jun 20 PHP
php 如何获取数组第一个值
Aug 06 PHP
PHP基于数组实现的分页函数实例
Aug 20 PHP
PHP session文件独占锁引起阻塞问题解决方法
May 12 PHP
PHP 闭包详解及实例代码
Sep 28 PHP
PHP实现添加购物车功能
Mar 06 PHP
PHP实现Redis单据锁以及防止并发重复写入
Apr 10 PHP
解决laravel上传图片之后,目录有图片,但是访问不到(404)的问题
Oct 14 PHP
php连接数据库代码应用分析
May 29 #PHP
PHP文件上传原理简单分析
May 29 #PHP
php修改时间格式的代码
May 29 #PHP
PHP第一季视频教程(李炎恢+php100 不断更新)
May 29 #PHP
PHP获取文件绝对路径的代码(上一级目录)
May 29 #PHP
php学习之变量的使用
May 29 #PHP
php学习之数据类型之间的转换代码
May 29 #PHP
You might like
解析php下载远程图片函数 可伪造来路
2013/06/25 PHP
PHP树的深度编历生成迷宫及A*自动寻路算法实例分析
2015/03/10 PHP
PHPCMS V9 添加二级导航的思路详解
2016/10/20 PHP
php cli模式下获取参数的方法
2017/05/05 PHP
GreyBox技术总结(转)
2010/11/23 Javascript
ASP.NET jQuery 实例13 原创jQuery文本框字符限制插件-TextArea Counter
2012/02/03 Javascript
js 如何实现对数据库的增删改查
2012/11/23 Javascript
基于JavaScript实现 获取鼠标点击位置坐标的方法
2013/04/12 Javascript
jquery 判断滚动条到达了底部和顶端的方法
2014/04/02 Javascript
jquery序列化表单以及回调函数的使用示例
2014/07/02 Javascript
分享一个常用的javascript静态类
2014/12/31 Javascript
js获取鼠标位置实例详解
2015/12/09 Javascript
jquery单击事件和双击事件冲突解决方案
2016/03/02 Javascript
基于JavaScript实现选项卡效果
2017/07/21 Javascript
基于LayUI分页和LayUI laypage分页的使用示例
2017/08/02 Javascript
vue.js实现只弹一次弹框
2018/01/29 Javascript
vue-router的HTML5 History 模式设置
2018/09/08 Javascript
又拍云 Node.js 实现文件上传、删除功能
2018/10/28 Javascript
jQuery实现的网站banner图片无缝轮播效果完整实例
2019/01/28 jQuery
Node.JS获取GET,POST数据之queryString模块使用方法详解
2020/02/06 Javascript
[14:51]DOTA2 HEROS教学视频教你分分钟做大人-卓尔游侠
2014/06/13 DOTA
[01:01]2020完美高校联赛(秋)西安落幕
2021/03/11 DOTA
KMP算法精解及其Python版的代码示例
2016/06/01 Python
基于python中pygame模块的Linux下安装过程(详解)
2017/11/09 Python
Python Numpy:找到list中的np.nan值方法
2018/10/30 Python
Luxplus瑞典:香水和美容护理折扣
2018/01/28 全球购物
MYPROTEIN澳大利亚官方网站:欧洲运动营养品牌
2019/06/26 全球购物
篝火晚会主持词
2014/03/25 职场文书
五年级学生评语
2014/04/22 职场文书
安全施工责任书
2014/08/25 职场文书
个人事迹材料怎么写
2014/12/30 职场文书
语文复习计划
2015/01/19 职场文书
2015年度企业工作总结
2015/05/21 职场文书
家长会后的感想
2015/08/11 职场文书
SpringBoot接入钉钉自定义机器人预警通知
2022/07/15 Java/Android
Python pyecharts案例超市4年数据可视化分析
2022/08/14 Python