当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


PHP array_uintersect()用法及代码示例


array_uintersect()是PHP中的内置函数,用于根据值计算两个或多个数组的交集。在用户定义的函数的帮助下,将第一个数组值与所有其他数组进行比较,并返回匹配项。

用法:

array_uintersect($array1, $array2, $array3, ..... $arrayn, user_function

参数:该函数接受两种类型的参数。一个是数组列表,另一个是用户定义的函数。


  • 数组清单:此函数接受以空格分隔的数组列表,我们要为其找到交集。在以上语法中,数组列表为$array1,$array2,$array3….. $arrayn。它可以接受任意数量的以空格分隔的数组,最小为2。
  • user_function:这是一个字符串类型参数,它是用户定义函数的名称。当函数的参数值相同时,该函数返回0;如果第一个参数大于第二个参数,则返回1;否则返回-1。

返回值:该函数返回另一个数组,该数组包含在作为参数传递的所有其他数组中存在的第一个数组的所有元素。如果没有元素匹配,则返回NULL数组。

例子:

Input : $a1=array("a"=>"striver", "b"=>"geeks", "d"=>"raj")
        $a2=array("d"=>"articles", "e"=>"raj", "f"=>"coding")

Output :
Array
(
    [d] => raj
)

Input :$a1 = array("1"=>"geeks", "2"=>"for", "3"=>"geek", "4"=>"coding")
$a2 = array("1"=>"geeks", "2"=>"for", "3"=>"php", "4"=>"coding", "5"=>"ide")
$a3 = array("6"=>"cpp", "7"=>"java", 8=>"geeks")

Output :
Array
(
    [1] => geeks
)

以下示例程序旨在说明array_uintersect()函数:

程序1:PHP程序演示array_uintersect()函数的工作。

<?php 
// PHP program to demonstrate the working of  
// array_uintersect() function   
  
// user-defined function 
function user_function($a, $b) 
{ 
if ($a===$b) 
  { 
  return 0; 
  } 
  return ($a>$b)?1:-1; 
} 
  
// arrays  
$a1=array("a"=>"striver", "b"=>"geeks", "d"=>"raj"); 
$a2=array("d"=>"articles", "e"=>"raj", "f"=>"coding"); 
  
$result=array_uintersect($a1, $a2, "user_function"); 
print_r($result); 
?>

输出:

Array
(
    [d] => raj
)

程序2:PHP程序演示具有三个数组的array_uintersect()函数的工作原理。

<?php 
// PHP program to demonstrate the working of  
// array_uintersect() function with 3 arrays  
  
// user-defined function 
function user_function($a, $b) 
{ 
if ($a===$b) 
  { 
  return 0; 
  } 
  return ($a>$b)?1:-1; 
} 
  
// 3 arrays  
$a1 = array("1"=>"geeks", "2"=>"for", "3"=>"geek", 
                                    "4"=>"coding"); 
$a2 = array("1"=>"geeks", "2"=>"for", "3"=>"php", 
                        "4"=>"coding", "5"=>"ide"); 
$a3 = array("6"=>"cpp", "7"=>"java", 8=>"geeks"); 
  
$result=array_uintersect($a1, $a2, $a3, "user_function"); 
print_r($result); 
?>

输出:

Array
(
    [1] => geeks
)

参考:
http://php.net/manual/en/function.array-uintersect.php



相关用法


注:本文由纯净天空筛选整理自Striver大神的英文原创作品 PHP | array_uintersect() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。