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 相关文章推荐
使用php+xslt在windows平台上
Oct 09 PHP
PHP 高手之路(三)
Oct 09 PHP
用PHP+java实现自动新闻滚动窗口
Oct 09 PHP
phpfans留言版用到的install.php
Jan 04 PHP
PHP中for循环语句的几种变型
Mar 16 PHP
在WINDOWS中设置计划任务执行PHP文件的方法
Dec 19 PHP
PHP 自定义错误处理函数trigger_error()
Mar 26 PHP
php float不四舍五入截取浮点型字符串方法总结
Oct 28 PHP
php把session写入数据库示例
Feb 26 PHP
PHP滚动日志的代码实现
Jun 10 PHP
PHP简单获取随机数的常用方法小结
Jun 07 PHP
php操作redis数据库常见方法实例总结
Feb 20 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+java实现自动新闻滚动窗口
2006/10/09 PHP
php fsockopen解决办法 php实现多线程
2014/01/20 PHP
经典PHP加密解密函数Authcode()修复版代码
2015/04/05 PHP
PHP实现微信网页授权开发教程
2016/01/19 PHP
在laravel中实现将查询的对象转换为多维数组的函数
2019/10/21 PHP
利用Dojo和JSON建立无限级AJAX动态加载的功能模块树
2007/03/24 Javascript
看了就知道什么是JSON
2007/12/09 Javascript
使用JQuery库提供的扩展功能实现自定义方法
2014/09/09 Javascript
JavaScript事件委托用法分析
2015/01/24 Javascript
JS判断网页广告是否被浏览器拦截过滤的代码
2015/04/05 Javascript
ECMAScript6块级作用域及新变量声明(let)
2015/06/12 Javascript
js将table的每个td的内容自动赋值给其title属性的方法
2016/10/13 Javascript
jQuery EasyUI 为Combo,Combobox添加清除值功能的实例
2017/04/13 jQuery
jQuery实现注册会员时密码强度提示信息功能示例
2017/09/05 jQuery
10种JavaScript最常见的错误(小结)
2019/06/21 Javascript
JavaScript中如何对多维数组(矩阵)去重的实现
2019/12/04 Javascript
ant design的table组件实现全选功能以及自定义分页
2020/11/17 Javascript
在Python的Flask框架中验证注册用户的Email的方法
2015/09/02 Python
Python 常用string函数详解
2016/05/30 Python
python调用OpenCV实现人脸识别功能
2018/05/25 Python
django2用iframe标签完成网页内嵌播放b站视频功能
2018/06/20 Python
python实现周期方波信号频谱图
2018/07/21 Python
使用Python机器学习降低静态日志噪声
2018/09/29 Python
浅谈python中拼接路径os.path.join斜杠的问题
2018/10/23 Python
python进行TCP端口扫描的实现
2018/12/21 Python
django 微信网页授权认证api的步骤详解
2019/07/30 Python
浅谈Tensorflow加载Vgg预训练模型的几个注意事项
2020/05/26 Python
pycharm中选中一个单词替换所有重复单词的实现方法
2020/11/17 Python
PyCharm常用配置和常用插件(小结)
2021/02/06 Python
Ray-Ban雷朋瑞典官方网站:全球领先的太阳眼镜品牌
2019/08/22 全球购物
曼城官方网上商店:Manchester City
2019/09/10 全球购物
自我评价200字分享
2013/12/17 职场文书
专题组织生活会思想汇报
2014/10/01 职场文书
安全生产标语大全
2014/10/06 职场文书
门面房租房协议书
2014/12/01 职场文书
后天观后感
2015/06/08 职场文书