这5个获取交集的函数 有 5个对应的获取差集的函数。我是链接。


array_intersect($arr1, $arr2);

//获得数组同键值的交集


array_intersect_key($arr1, $arr2);

//获得数组同键名的交集


array_intersect_assoc(同上);

//获得数组同键名键值的交集


array_intersect_uassoc(同上,'自定义回调函数');

//用自定义的回调函数来获得数组同键名键值的交集


array_intersect_ukey(同上, 自定义回调函数);

//用自定义的回调函数来获得数据同键名的交集


 $arr1 = array('r' => 'red','u' => 'blue', 'g' => 'green', 'b' => 'black');
$arr2 = array('r' => 'red', 'b' => 'blue');
/***********array_intersect(计算数组同键值的交集)*****************/
$arrIntersect = array_intersect($arr1, $arr2);
var_dump($arrIntersect);//=>array(2) { ["r"]=> string(3) "red" ["u"]=> string(4) "blue" } /***********array_intersect_key(计算数组同键名的交集)*****************/
$arrIntersectKey = array_intersect_key($arr1, $arr2);
var_dump($arrIntersectKey);//=>array(2) { ["r"]=> string(3) "red" ["b"]=> string(5) "black" } /***********array_intersect_assoc(计算数组同键名同键值的交集)*****************/
$arrIntersectAssoc = array_intersect_assoc($arr1, $arr2);
var_dump($arrIntersectAssoc);//=>array(1) { ["r"]=> string(3) "red" } /***********array_intersect_uassoc(用自定义的回调函数来计算数组同键名同键值的交集)*****************/
$arrIntersectUassoc = array_intersect_uassoc($arr1, $arr2, 'arr_intersect_uassoc_func');
var_dump($arrIntersectUassoc);//=>array(1) { ["r"]=> string(3) "red" } function arr_intersect_uassoc_func($a, $b) {
if ($a === $b)
return 0;
elseif ($a > $b)
return 1;
else
return -1;
} /***********array_intersect_ukey(用自定义的回调函数来计算数组同键名的交集)*****************/
$arrIntersectUkey = array_intersect_ukey($arr1, $arr2, 'arr_intersect_ukey_func');
var_dump($arrIntersectUkey);//=>array(2) { ["r"]=> string(3) "red" ["b"]=> string(5) "black" } function arr_intersect_ukey_func($k1, $k2) {
if ($k1 == $k2)
return 0;
elseif ($k1 > $k2)
return 1;
else
return -1;
}

php中的常用数组函数(三)(获取数组交集的函数们 array_intersect()、array_intersect_key()、array_intersect_assoc()、array_intersect_uassoc()、array_intersect_ukey())的更多相关文章

  1. jQuery中的常用内容总结(三)

    jQuery中的常用内容总结(三) 转载请注明地址:http://www.cnblogs.com/funnyzpc/p/7571998.html 内容提要 选择器(第一节) 选择器的扩展方法(第一节) ...

  2. JavaScript数组(三)数组对象使用整理

    一.数组声明方法1. var  a=new Array();2. var a=new Array([size]);3.var a=new Array(['a'],[1],['b'],[123]);4. ...

  3. JavaScript 数组 length 属性获取数组长度或设置数组元素的数目

    JavaScript 数组 length 属性 JavaScript 数组 length 属性可返回或设置或组中元素的数目,语法如下: array_object.length 利用 length 属性 ...

  4. (一)javascript中的数组index属性——获取数组的索引值

    例如:要做到这样的效果 点击每个选项时,会显示不同的div. 我们的做法:在javascript中,先把所有的div的display设置为none,然后在根据当前的数组里的索引值进行一个显示div的过 ...

  5. Java如何声明一个数组?JS如何声明一个数组?如何获取数组长度

    1 Long[] numbers; //一般使用的定义方式,可分为静态和动态两种定义方式,下有说明. 2 Long numbers[]; //跟上面用法一致. 3 Long... numbers; / ...

  6. JavaScript 数组(三)数组方法

    常用方法及案例参考这篇:数组对象及常用方法

  7. C/C++中如何获取数组的长度?

    C.C++中没有提供 直接获取数组长度的函数,对于存放字符串的字符数组提供了一个strlen函数获取长度,那么对于其他类型的数组如何获取他们的长度呢?其中一种方法是使 用sizeof(array) / ...

  8. Mysql中的常用函数:

    Mysql中的常用函数: 1.字符串函数: (1).合并字符串 concat():// concat('M','y',"SQL",'5.5');== MySQL5.5//当传入的参 ...

  9. C/C++中如何获取数组的长度(宏&模板)

    C.C++中没有提供 直接获取数组长度的函数.对于存放字符串的字符数组提供了一个strlen函数获取长度,那么对于其他类型的数组如何获取他们的长度呢?其中一种方法是使 用  sizeof(array) ...

  10. C/C++中如何获取数组的长度?

    C/C++中如何获取数组的长度? 收藏 C.C++中没有提供 直接获取数组长度的函数,对于存放字符串的字符数组提供了一个strlen函数获取长度,那么对于其他类型的数组如何获取他们的长度呢?其中一种方 ...

随机推荐

  1. windows下Android利用ant自动编译、修改配置文件、批量多渠道,打包生成apk文件

    原创文章,转载请注明:http://www.cnblogs.com/ycxyyzw/p/4535459.html android 程序打包成apk,如果在是命令行方式,一般都要经过如下步骤: 1.用a ...

  2. 简单配置nginx使之支持pathinfo

    只需要修改3个地方就可以了 location ~ \.php {    #去掉$ root          H:/PHPServer/WWW; fastcgi_pass   127.0.0.1:90 ...

  3. android 监听软键盘的收起与打开

    参考: http://toughcoder.net/blog/2015/10/09/android-trick-detect-soft-keyboard-show-slash-hide/ packag ...

  4. nohup启动java命令导致dubbo无法注册

    没有任何异常,日志和正常注册日志一模一样,但服务就是没注册成功. 解决办法,screen代替nohup命令. screen screen -ls screen -r pid (ctrl + a)+d

  5. [转载]堆排序(HeapSort) Java实现

    堆排序的思想是利用数据结构--堆.具体的实现细节: 1. 构建一个最大堆.对于给定的包含有n个元素的数组A[n],构建一个最大堆(最大堆的特性是,某个节点的值最多和其父节点的值一样大.这样,堆中的最大 ...

  6. CSS基础(二):基础和语法

    CSS语法 CSS 规则由两个主要的部分构成:选择器,以及一条或多条声明.选择器通常是您需要改变样式的 HTML 元素. selector {declaration1; declaration2; . ...

  7. apache下virtualhost与location合用配置转发SVN控制访问

    使用apache的文件系统配置 使用virtualhost 实现location 重定向 NameVirtualHost *:80 <VirtualHost *:80> ServerNam ...

  8. [转载]斐讯K2 A2版免TTL刷BREED不死Bootloader

    1:路由器能正常上网,登陆进路由器 (默认密码admin) 2:用浏览器打开这个网址,如果默认ip不是192.168.2.1修改一下.打开后等待即可自动刷入breed. http://192.168. ...

  9. SharePoint 2010中重置windows 活动目录(AD)域用户密码的WebPart(免费下载)

    由于SharePoint 2013推出不久,并非所有的企业都会升级到SharePoint 2013的,毕竟升级不是打打补丁这么简单,更多的企业还是使用Sharepoint 2010版本的,因此本人自行 ...

  10. Love

    愿这段代码陪我走过此生,献给我最爱的榨菜. /** *@Description:<p>我爱榨菜</p> *@author 王旭 *@time 2016年4月25日 下午7:58 ...