首页 >后端开发 >php教程 >php比较两个数组的键名并返回交集的函数array_intersect_key()

php比较两个数组的键名并返回交集的函数array_intersect_key()

黄舟
黄舟原创
2017-11-07 13:55:472397浏览

实例

比较两个数组的键名,并返回交集:

<?php
$a1=array("a"=>"red","b"=>"green","c"=>"blue");
$a2=array("a"=>"red","c"=>"blue","d"=>"pink");

$result=array_intersect_key($a1,$a2);
print_r($result);
?>

定义和用法

array_intersect_key() 函数用于比较两个(或更多个)数组的键名 ,并返回交集。

该函数比较两个(或更多个)数组的键名,并返回一个交集数组,该数组包括了所有在被比较的数组(array1)中,同时也在任何其他参数数组(array2 或 array3 等等)中的键名。

语法

array_intersect_key(array1,array2,array3...)
参数 描述
array1 必需。与其他数组进行比较的第一个数组。
array2 必需。与第一个数组进行比较的数组。
array3,... 可选。与第一个数组进行比较的其他数组。

技术细节

返回值: 返回一个交集数组,该数组包括了所有在被比较的数组(array1)中,同时也在任何其他参数数组(array2 或 array3 等等)中的键名。
PHP 版本: 5.1.0+

更多实例

实例 1

比较两个数值数组的键名,并返回交集:

<?php
$a1=array("red","green","blue","yellow");
$a2=array("red","green","blue");

$result=array_intersect_key($a1,$a2);
print_r($result);
?>

实例 2

比较三个数组的键名,并返回交集:

<?php
$a1=array("a"=>"red","b"=>"green","c"=>"blue");
$a2=array("c"=>"yellow","d"=>"black","e"=>"brown");
$a3=array("f"=>"green","c"=>"purple","g"=>"red");

$result=array_intersect_key($a1,$a2,$a3);
print_r($result);
?>

实例:

<?php
 $array1  = array( &#39;one&#39;   =>  1 ,  &#39;two&#39;   =>  2 ,  &#39;three&#39;   =>  3 ,  &#39;five&#39;  =>  4 ); 
$array2  = array( &#39;six&#39;  =>  5 ,  &#39;one&#39;  =>  6 ,  &#39;five&#39;  =>  7 ,  &#39;ten&#39;    =>  8 );
 var_dump ( array_intersect_key ( $array1 ,  $array2 ));
?>

运行结果:

array(2) { ["one"]=> int(1) ["five"]=> int(4) }


以上是php比较两个数组的键名并返回交集的函数array_intersect_key()的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn