php数组函数序列之array_intersect() 返回两个或多个数组的交集数组
array_intersect() 定义和用法
array_intersect() 函数返回两个或多个数组的交集数组。
结果数组包含了所有在被比较数组中,也同时出现在所有其他参数数组中的值,键名保留不变。
注释:仅有值用于比较。
语法
array_intersect(array1,array2,array3...)
参数 | 描述 |
---|---|
array1 | 必需。与其他数组进行比较的第一个数组。 |
array2 | 必需。与第一个数组进行比较的数组。 |
array3 | 可选。与第一个数组进行比较的数组。可以有多个。 |
例子
代码如下:
<?php
$a1=array(0=>"Cat",1=>"Dog",2=>"Horse");
$a2=array(3=>"Horse",4=>"Dog",5=>"Fish");
print_r(array_intersect($a1,$a2));
?>
输出:
Array ( [1] => Dog [2] => Horse )
相关推荐
-
PHP数组的交集array_intersect(),array_intersect_assoc(),array_inter_key()函数的小问题
返回一个交集共有元素的数组(只是数组值得比较).array_intersect_assoc()函数是将键值和值绑定,一起比较交集部分.array_intersect_key()函数是将两个数组的键值进行比较,返回键值交集的数组.但实际应用中也遇到了一些小问题,正如下: 实例: 复制代码 代码如下: <?PHP $array = array("red"=>"Red","green"=>"red4","
-
php数组操作之键名比较与差集、交集赋值的方法
本文实例讲述了php数组操作之键名比较与差集.交集赋值的方法.分享给大家供大家参考.具体方法如下: 该实例主要实现对数组的各种常见操作.如对键名比较计算数组的差集,计算差集,给指定数组中插入一个元素,反转数组与交集赋值新的数组等. 具体代码如下: 复制代码 代码如下: //定义回调函数 function key_compare_func($key1,$key2) { if($key1==$key2) //如果两参数相等 return 0; //返回0
-
php 归并排序 数组交集
复制代码 代码如下: $a=array('1','2','3','4','22'); $b=array('1','3','4','11','22','23'); f($a, $b, 5, 6, $t); print_r($t); function f(&$a, &$b, $n, $m, &$t){ $i=0;$j=0; while($i<$n && $j<$m){ if($a[$i]==$b[$j]){ echo $a[$i]." "
-
PHP获取二维数组中某一列的值集合
PHP还是比较常用的,于是我研究了一下PHP二维数组.在处理php数组的时候,有一种需求特别的频繁,如下二维数组: $arr = array( 1=>array( 'id' => 5, 'name' => '张三' ), 2=>array( 'id' => 6, 'name' => '李四' ) ); 目的就是要取到key为name的集合,得到这个结果: $arr2 = array( 0=>'张三', 1=>'李四' ); 这里有几种方法: 1:最简单的,f
-
PHP数组对比函数,存在交集则返回真,否则返回假
复制代码 代码如下: <?php $array1 = array('a', 'b', 'c', 'd'); $array2 = array('a', 'c'); $array3 = array_intersect($array1, $array2); if($array3) { echo '有交集'; } ?>
-
php array_udiff_assoc 计算两个数组的差集实例
php array_udiff() 函数用于比较两个(或更多个)数组的键名和键值,并返回差集.此比较是通过用户提供的回调函数来进行的.如果认为第一个参数小于,等于,或大于第二个参数时必须分别返回一个小于零,等于零,或大于零的整数.本文章通过实例向大家讲解array_udiff()函数的使用方法, array_udiff_assoc - 带索引检查计算数组的差集,用回调函数比较数据 基本语法: array array_udiff_assoc ( array $array1 , array $arr
-
PHP 如何获取二维数组中某个key的集合
本文为代码分享,也是在工作中看到一些"大牛"的代码,做做分享. 具体是这样的,如下一个二维数组,是从库中读取出来的. 代码清单: 复制代码 代码如下: $user = array( 0 => array( 'id' => 1, 'name' => '张三', 'email' => 'zhangsan@sina.com', ), 1 => array( 'id' => 2, 'name' => '李四', 'email' => 'lisi@
-
PHP实现对数组简单求交集,差集,并集功能示例
本文实例讲述了PHP实现对数组简单求交集,差集,并集功能.分享给大家供大家参考,具体如下: <?php $arr1 = array( '0' => 'zero', '1' => 'one', '2' => 'two', '3' => 'three' ); $arr2 = array( '2' => 'two', 'three' => 'three', '4' => 'four', '5' => 'five' ); //差集[对比返回在 arr1 中但是
-
PHP数组交集的优化代码分析
不过由于手机的参数多,且不同的手机其参数差异大,所以参数表结构通常是纵表(一个参数是一行),而不是横表(一个参数是一列),此时使用若干参数来取结果,通常就是把每个单独参数来取结果,再一起取交集. 假定每个参数会包含一千个左右的唯一结果(id int),以此为前提来模拟生成一些数据: 复制代码 代码如下: <?php $rand = function() { $result = array(); for ($i = 0; $i < 1000; null) { $value = mt_rand(1
-
PHP获得数组交集与差集的方法
本文实例讲述了PHP获得数组交集与差集的方法.分享给大家供大家参考.具体分析如下: 一.数组的交集 array_intersect() array_intersect()函数返回一个保留了键的数组,这个数组只由第一个数组中出现的且在其他每个输入数组中都出现的值组成.其形式如下: array array_intersect(array array1,array array2[,arrayN-]) 下面这个例子将返回在$fruit1数组中出现的且在$fruit2和$fruit3中也出现的所有的水果:
随机推荐
- 获取磁盘IO与系统负载Load的shell脚本
- 批处理重命名特殊文件名的代码
- Ajax 验证用户输入的验证码是否与随机生成的一致
- 利用python实现命令行有道词典的方法示例
- asp.net Repeater 数据绑定的具体实现(图文详解)
- JavaScript转换与解析JSON方法实例详解
- 教你在PHPStorm中配置Xdebug
- ThinkPHP模板判断输出Present标签用法详解
- 献给php初学者(入门学习经验谈)
- wxPython窗口的继承机制实例分析
- Shell实用技巧:快速去除字符串中的空格
- JDBC连接Access数据库的几种方式介绍
- Lua教程(十六):系统库(os库)
- jQuery中:empty选择器用法实例
- JQuery中解决重复动画的方法
- 为jQuery-easyui的tab组件添加右键菜单功能的简单实例
- 5秒后跳转效果(setInterval/SetTimeOut)
- Java中的instanceof关键字在Android中的用法实例详解
- Android开发实现自定义新闻加载页面功能实例
- 解析JavaScript中instanceof对于不同的构造器或许都返回true