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 相关文章推荐
一个简单的域名注册情况查询程序
Oct 09 PHP
增加反向链接的101个方法 站长推荐
Jan 31 PHP
php简单的留言板与回复功能具体实现
Feb 19 PHP
DOM基础及php读取xml内容操作的方法
Jan 23 PHP
CodeIgniter针对lighttpd服务器URL重写的方法
Jun 10 PHP
php实现搜索类封装示例
Mar 31 PHP
PHP框架laravel的.env文件配置教程
Jun 07 PHP
PHP+MySQL实现消息队列的方法分析
May 09 PHP
php获取微信基础接口凭证Access_token
Aug 23 PHP
PhpStorm配置Xdebug调试的方法步骤
Feb 02 PHP
浅谈php使用curl模拟多线程发送请求
Mar 08 PHP
php xhprof使用实例详解
Apr 15 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 传输会话curl函数的实例详解
2017/09/12 PHP
使用laravel和ajax实现整个页面无刷新的操作方法
2019/10/03 PHP
javascript 贪吃蛇实现代码
2008/11/22 Javascript
优化innerHTML操作(提高代码执行效率)
2011/08/20 Javascript
使用jquery实现以post打开新窗口
2014/03/19 Javascript
Ionic快速安装教程
2016/06/03 Javascript
JavaScript中闭包之浅析解读(必看篇)
2016/08/25 Javascript
Vue.js 父子组件通讯开发实例
2016/09/06 Javascript
js 显示日期时间的实例(时间过一秒加1)
2017/10/25 Javascript
Node.js 使用AngularJS的方法示例
2018/05/11 Javascript
vue element项目引入icon图标的方法
2018/06/06 Javascript
layDate插件设置开始和结束时间
2018/11/15 Javascript
微信小程序-API接口安全详解
2019/07/16 Javascript
详解Django中Request对象的相关用法
2015/07/17 Python
Python Socket编程详细介绍
2017/03/23 Python
PyChar学习教程之自定义文件与代码模板详解
2017/07/17 Python
Python实现按照指定要求逆序输出一个数字的方法
2018/04/19 Python
Centos 升级到python3后pip 无法使用的解决方法
2018/06/12 Python
pygame实现俄罗斯方块游戏(基础篇1)
2019/10/29 Python
Pytorch 实现冻结指定卷积层的参数
2020/01/06 Python
Python list运算操作代码实例解析
2020/01/20 Python
使用tensorflow实现矩阵分解方式
2020/02/07 Python
Python如何在main中调用函数内的函数方式
2020/06/01 Python
css背景图片的背景裁切、背景透明度、背景变换等效果运用
2012/12/24 HTML / CSS
纯CSS3实现圆角效果(含IE兼容解决方法)
2014/05/07 HTML / CSS
墨西哥网上超市:Superama
2018/07/10 全球购物
Giglio俄罗斯奢侈品购物网:男士、女士、儿童高级时装
2018/07/27 全球购物
应届生法律顾问求职信
2013/11/19 职场文书
早读迟到检讨书
2014/01/24 职场文书
法学专业毕业生自荐信
2014/06/11 职场文书
县级领导干部开展党的群众路线教育实践活动工作汇报
2014/10/25 职场文书
初中生300字旷课检讨书
2014/11/19 职场文书
人口与计划生育责任书
2015/05/09 职场文书
Html分层的box-shadow效果的示例代码
2021/03/30 HTML / CSS
vue响应式原理与双向数据的深入解析
2021/06/04 Vue.js
Oracle安装TNS_ADMIN环境变量设置参考
2021/11/01 Oracle