博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
007——数组(七)通过回调函数得到数组交集或差集
阅读量:7060 次
发布时间:2019-06-28

本文共 2736 字,大约阅读时间需要 9 分钟。

"a", "b" => 'b', "c" => "c1");$array2 = array("a" => "a", "b" => 'b', "c" => "c");function func($v1, $v2){ if ($v1 === $v2){ return 0; }elseif ($v1>$v2){ return 1; }else{ return -1; };}$array3 = array_udiff($array1, $array2, "func");print_r($array3);//输出:Array ( [c] => c1 )*//*array_udiff_assoc() 通过回调函数,比较2个或多个数组的键名或键值的差值。 * *//*$array1 = array("a1" => "a", "b" => 'b1', "c" => "c");$array2 = array("a" => "a", "b" => 'b', "c" => "c");function fun1($v1,$v2){ if ($v1 === $v2){ return 0; }elseif ($v1>$v2){ return 1; }else{ return -1; };}$array3=array_udiff_assoc($array1,$array2,"fun1");print_r($array3);//输出:Array ( [a1] => a [b] => b1 )*//*array_udiff_uassoc() 通过回调函数,比较多个数组的键名和键值,要定义2个回调函数来处理键名和键值的比较 * *//*$array1 = array("a1" => "a", "b" => 'b1', "c" => "c");$array2 = array("a" => "a", "b" => 'b', "c" => "c");function func_date($v1,$v2){ if ($v1 === $v2){ return 0; }elseif ($v1>$v2){ return 1; }else{ return -1; };}function func_key($v1,$v2){ if ($v1 === $v2){ return 0; }elseif ($v1>$v2){ return 1; }else{ return -1; };}$array3=array_udiff_uassoc($array1,$array2,"func_date","func_key");print_r($array3);//输出:Array ( [a1] => a [b] => b1 )*//*array_uintersect() 得到多个数组中键值的交集,通过回调函数: * *//*$array1 = array("a" => "a1", "b" => 'b1', "c" => "c");$array2 = array("a" => "a1", "b" => 'b', "c" => "c");function func5($v1, $v2){ if ($v1 === $v2) { return 0; } elseif ($v1 >$v2) { return 1; } else { return -1; };}$array3 = array_uintersect($array1, $array2, "func5");print_r($array3);//输出:Array ( [a] => a1 )*//*array_uintersect_assoc() 得到多个数组中的键值的交集,通过函数,键名也参与比较 * *//*$array1 = array("a" => "a", "b" => 'b1', "c" => "c");$array2 = array("a" => "a", "b" => 'b', "c1" => "c");function func6($v1, $v2){ if ($v1 === $v2) { return 0; } elseif ($v1 > $v2) { return 1; } else { return -1; };}$array3 = array_uintersect_assoc($array1, $array2, "func6");print_r($array3);//输出:Array ( [a] => a )*//*array_uintersect_uassoc() 通过2个回调函数,对多个数组的键名和键值进行比较,得到多个数组的交集元素。 * */$array1 = array("a" => "a", "b" => 'b1', "c" => "c");$array2 = array("a" => "a", "b" => 'b', "c1" => "c");function func_data($v1, $v2){ if ($v1 === $v2) { return 0; } elseif ($v1 > $v2) { return 1; } else { return -1; };}function func_key($v1, $v2){ if ($v1 === $v2) { return 0; } elseif ($v1 > $v2) { return 1; } else { return -1; };}$array3 = array_uintersect_uassoc($array1, $array2, "func_data","func_key");print_r($array3);//输出:Array ( [a] => a )

  

转载于:https://www.cnblogs.com/yiweiyihang/p/7824689.html

你可能感兴趣的文章
LoadRunner启动自带例子Web Tours报错
查看>>
致血气方刚的产品经理:如何不被程序员嫌弃
查看>>
导出文件名带时间信息的dmp文件
查看>>
zencart简单设置分类链接不同css样式
查看>>
4、移植三星官方内核
查看>>
jsp页面中jstl标签详解[转]
查看>>
linux下配置jdk+tomcat
查看>>
codeforce div 377
查看>>
使用 RGraph(HTML5) 绘制折线图(一)
查看>>
FreeCodeCamp 中级算法记录
查看>>
k8s入门系列之扩展组件(一)DNS安装篇
查看>>
【设计模式】牛市股票还会亏钱 --- 外观模式
查看>>
基于Elastic Stack最新版本搭建ELK
查看>>
j抽奖
查看>>
[算法] dijkstra单源无负权最小路径算法
查看>>
字符串的全排列
查看>>
Java并发编程的艺术(十)——Java中的锁(5)
查看>>
mysql实战39 | 自增主键为什么不是连续的?
查看>>
软件架构师的修炼之道
查看>>
[HDU 1372] Knight Moves
查看>>