实例
比较两个数组的键名,并返回交集:<?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( 'one' => 1 , 'two' => 2 , 'three' => 3 , 'five' => 4 );
$array2 = array( 'six' => 5 , 'one' => 6 , 'five' => 7 , 'ten' => 8 );
var_dump ( array_intersect_key ( $array1 , $array2 ));
?>
运行结果:array(2) { ["one"]=> int(1) ["five"]=> int(4) }