php专区

 首页 > php专区 > PHP基础 > 数组 > php 计算两数组交集两个函数 - php数组

php 计算两数组交集两个函数 - php数组

分享到:
【字体:
导读:
          使用 array_intersect 求两个数组的交集比使用 array_diff 求同样两个数组的并集要快,如果要求数组 $a 与数组 $b 的差集的个数,应该使用:count($a) - count(array_intersect($a, $b)),......

php 计算两数组交集两个函数

使用 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 可选,与第一个数组进行比较的数组,可以有多个.

PHP实例代码如下:

  1. $a1=array(0=>"Cat",1=>"Dog",2=>"Horse"); 
  2. $a2=array(3=>"Horse",4=>"Dog",5=>"Fish"); 
  3. print_r(array_intersect($a1,$a2)); 
  4. ?> 
  5. //输出:Array ( [1] => Dog [2] => Horse ) 

array_diff() 函数返回两个数组的差集数组,该数组包括了所有在被比较的数组中,但是不在任何其他参数数组中的键值,在返回的数组中,键名保持不变.

语法:array_diff(array1,array2,array3...)

参数 描述 

array1 必需,与其他数组进行比较的第一个数组.

array2 必需,与第一个数组进行比较的数组.

array3 可选,与第一个数组进行比较的数组.

提示和注释

提示:可用一个或任意多个数组与第一个数组进行比较.

注释:仅有值用于比较.

PHP实例代码如下:

  1. $a1=array(0=>"Cat",1=>"Dog",2=>"Horse"); 
  2. $a2=array(3=>"Horse",4=>"Dog",5=>"Fish"); 
  3. print_r(array_diff($a1,$a2)); 
  4. ?> 
  5. //输出:Array ( [0] => Cat ) 
  6. //开源代码phpfensi.com
分享到:
php 数组的常用函数 - php数组
php 数组的常用函数 在php中数组是种强大的数据类型,他可以做的事情很多,可以存储不同的数据类型在一个数组中,下面我们列出了数组常用的操作,排序,键名对数组排序等做法,函数代码如下:
php删除数组中重复值的代码 - php数组
php删除数组中重复值的代码 在$intTotal比较小的情况下,比如说1000以内,$intRand的取值基本不影响结果,两者执行的时间都差不多,测试$intTotal 大于10000时,$intRand取值100时,使用array_unique的效率要高于foreach循环判断,$intRand=10,两者执行时间一致. PHP实例代码如下:   因...
  •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
  • 在这里……