数组函数

PHP array_intersect_key() 函数

主题:PHP 数组参考上一页|下一页

说明

array_intersect_key() 函数比较两个或多个数组的键并返回匹配项。 比较中不考虑键值,仅检查键。

下表总结了该函数的技术细节。

返回值: 返回一个数组,其中包含 array1 中的所有元素,其键存在于 所有 of 其他数组中。
版本: PHP 5.1.0+

语法

array_intersect_key() 函数的基本语法如下:

array_intersect_key(array1, array2, ...);

下面的例子展示了 array_intersect_key() 函数的作用。

<?php
// 样本数组
$array1 = array("a"=>"apple", "b"=>"ball", "c"=>"cat", "dog");
$array2 = array("a"=>"apricot", "b"=>"banana");

// 计算交点
$result = array_intersect_key($array1, $array2);
print_r($result);
?>

参数

array_intersect_key() 函数接受以下参数。

参数 说明
array1 必填。 指定要比较的数组。
array2 必填。 指定一个数组来比较键。
... 可选。 指定更多数组来比较键。

更多示例

这里有更多示例展示了 array_intersect_key() 函数的实际工作原理:

在以下示例中,此函数将一个数组与其他两个数组进行比较。

<?php
// 样本数组
$array1 = array("a"=>"apple", "b"=>"ball", "c"=>"cat", "dog");
$array2 = array("a"=>"apricot", "b"=>"banana");
$array3 = array("a"=>"alligator", "d"=>"dog");

// 计算交点
$result = array_intersect_key($array1, $array2, $array3);
print_r($result);
?>

key=>value 对中的两个键如果它们的字符串表示相同,则被认为是相等的,即 (string) $key1 === (string) $key2。 让我们试试下面的例子:

<?php
// 样本数组
$array1 = array(1, 2, 5, 7, 10);
$array2 = array(0, "1"=>3, "x"=>8, "4"=>13);

// 计算交点
$result = array_intersect_key($array1, $array2);
print_r($result);
?>
Advertisements