php计算两数组交集两个函数
欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 使用 array_intersect 求两个数组的交集比使用 array_diff 求同样两个数组的并集要快。 如果要求数组 $a 与数组 $b 的差集的个数,应该使用 count($a) - count(array_intersect($a, $b)),而不
欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入
使用 array_intersect 求两个数组的交集比使用 array_diff 求同样两个数组的并集要快。
如果要求数组 $a 与数组 $b 的差集的个数,应该使用 count($a) - count(array_intersect($a, $b)),而不要用 count(array_diff($a, $b));
前面要比后者快,在大数组中更为明显。
array_intersect() 函数返回两个或多个数组的交集数组。
结果数组包含了所有在被比较数组中,也同时出现在所有其他参数数组中的值,键名保留不变。
注释:仅有值用于比较。
语法
array_intersect(array1,array2,array3…)参数 描述
array1 必需。与其他数组进行比较的第一个数组。
array2 必需。与第一个数组进行比较的数组。
array3 可选。与第一个数组进行比较的数组。可以有多个。
实例
$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 )
array_diff() 函数返回两个数组的差集数组。该数组包括了所有在被比较的数组中,但是不在任何其他参数数组中的键值。
在返回的数组中,键名保持不变。
语法
array_diff(array1,array2,array3…)参数 描述
array1 必需。与其他数组进行比较的第一个数组。
array2 必需。与第一个数组进行比较的数组。
array3 可选。与第一个数组进行比较的数组。
提示和注释
提示:可用一个或任意多个数组与第一个数组进行比较。
注释:仅有值用于比较。
实例
$a1=array(0=>"Cat",1=>"Dog",2=>"Horse");
$a2=array(3=>"Horse",4=>"Dog",5=>"Fish");
print_r(array_diff($a1,$a2));
?>
输出:Array ( [0] => Cat )
推荐阅读
-
php 计算两个时间戳相隔的时间的函数(小时)
-
PHP中strncmp()函数比较两个字符串前2个字符是否相等的方法
-
php数组函数序列之array_intersect() 返回两个或多个数组的交集数组
-
PHP数组对比函数,存在交集则返回真,否则返回假
-
php通过array_merge()函数合并两个数组的方法
-
PHP数组的交集array_intersect(),array_intersect_assoc(),array_inter_key()函数的小问题
-
php计算两个文件相对路径的方法
-
numpy 计算两个数组重复程度的方法
-
php计算两个整数的最大公约数常用算法小结
-
PHP比较两个数组的差异