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 相关文章推荐
一个ORACLE分页程序,挺实用的.
Oct 09 PHP
使用php显示搜索引擎来的关键词
Feb 13 PHP
PHP中把stdClass Object转array的几个方法
May 08 PHP
PHP中shuffle数组值随便排序函数用法
Nov 21 PHP
php结合正则获取字符串中数字
Jun 19 PHP
php简单统计字符串单词数量的方法
Jun 19 PHP
10个对初学者非常有用的PHP技巧
Apr 06 PHP
windows server 2008/2012安装php iis7 mysql环境搭建教程
Jun 30 PHP
yii2.0数据库迁移教程【多个数据库同时同步数据】
Oct 08 PHP
PHP基于正则批量替换Img中src内容实现获取缩略图的功能示例
Jun 07 PHP
基于laravel-admin 后台 列表标签背景的使用方法
Oct 03 PHP
PHP单元测试配置与使用方法详解
Dec 27 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程序
2006/10/09 PHP
PHP抽奖算法程序代码分享
2015/10/08 PHP
THINKPHP截取中文字符串函数实例代码
2017/03/20 PHP
Javascript中判断变量是数组还是对象(array还是object)
2013/08/14 Javascript
JS实现日期加减的方法
2013/11/29 Javascript
一个js控制的导航菜单实例代码
2013/12/03 Javascript
给angular加上动画效遇到的问题总结
2016/02/17 Javascript
Bootstarp风格的toggle效果分享
2016/02/23 Javascript
Bootstrap源码解读排版(1)
2016/12/23 Javascript
bootstrap table表格客户端分页实例
2017/08/07 Javascript
vue-cli实现多页面多路由的示例代码
2018/01/30 Javascript
详解小程序缓存插件(mrc)
2018/08/17 Javascript
利用Vue构造器创建Form组件的通用解决方法
2018/12/03 Javascript
用VueJS写一个Chrome浏览器插件的实现方法
2019/02/27 Javascript
javascript设计模式 ? 迭代器模式原理与用法实例分析
2020/04/17 Javascript
JavaScript面向对象核心知识与概念归纳整理
2020/05/09 Javascript
vue-cli 3如何使用vue-bootstrap-datetimepicker日期插件
2021/02/20 Vue.js
[01:11:11]Alliance vs RNG 2019国际邀请赛淘汰赛 败者组BO1 8.20.mp4
2020/07/19 DOTA
Python爬取三国演义的实现方法
2016/09/12 Python
Python 做曲线拟合和求积分的方法
2018/12/29 Python
Python批量生成特定尺寸图片及图画任意文字的实例
2019/01/30 Python
python实现微信每日一句自动发送给喜欢的人
2019/04/29 Python
python支付宝支付示例详解
2019/08/22 Python
django中media媒体路径设置的步骤
2019/11/15 Python
python实现多进程按序号批量修改文件名的方法示例
2019/12/30 Python
matplotlib 对坐标的控制,加图例注释的操作
2020/04/17 Python
使用Numpy对特征中的异常值进行替换及条件替换方式
2020/06/08 Python
Python配置pip国内镜像源的实现
2020/08/20 Python
pytorch下的unsqueeze和squeeze的用法说明
2021/02/06 Python
英国Zoro工具:手动工具,电动工具和个人防护用品
2016/11/02 全球购物
Aerosoles爱柔仕官网:美国舒软女鞋品牌
2017/07/17 全球购物
临床护士自荐信
2014/01/31 职场文书
大学生作弊检讨书
2014/02/19 职场文书
yy生日主持词
2014/03/20 职场文书
2014年医院科室工作总结
2014/12/20 职场文书
优秀共青团员事迹材料
2014/12/25 职场文书