定义和用法
array_intersect_key() 函数用于比较两个(或更多个)数组的键名 ,并返回交集。
该函数比较两个(或更多个)数组的键名,并返回一个交集数组,该数组包括了所有在被比较的数组(array1)中,同时也在任何其他参数数组(array2 或 array3 等等)中的键名。
语法
array_intersect_key(array1,array2,array3...)
参数 | 描述 |
---|---|
array1 | 必需。与其他数组进行比较的第一个数组。 |
array2 | 必需。与第一个数组进行比较的数组。 |
array3,… | 可选。与第一个数组进行比较的其他数组。 |
技术细节
返回值: | 返回一个交集数组,该数组包括了所有在被比较的数组(array1)中,同时也在任何其他参数数组(array2 或 array3 等等)中的键名。 |
---|---|
PHP 版本: | PHP 5 >= 5.1.0, PHP 7 |
实例
<?php
$array1 = array('blue' => 1, 'red' => 2, 'green' => 3, 'purple' => 4);
$array2 = array('green' => 5, 'blue' => 6, 'yellow' => 7, 'cyan' => 8);
var_dump(array_intersect_key($array1, $array2));
?>
以上例程会输出:
array(2) {
["blue"]=>
int(1)
["green"]=>
int(3)
}
上例中可以看到只有 ‘blue’ 和 ‘green’ 两个键名出现在两个数组中,因此被返回。此外注意 ‘blue’ 和 ‘green’ 的值在两个数组中是不同的。但因为只检查键名,因此还是匹配。返回的值只是 array1
中的。
为您推荐与 php数组函数 相关的帖子:
- PHP array_intersect_ukey() 函数:比较两个数组的键名(使用用户自定义函数比较键名),并返回交集
- PHP array_intersect_uassoc() 函数:比较两个数组的键名和键值(使用用户自定义函数比较键名),并返回交集
- PHP array_intersect_assoc() 函数:带索引检查计算数组的交集
- PHP array_intersect() 函数:计算数组的交集
- PHP array_diff_assoc() 函数:比较两个数组的键名和键值,并返回差集
- PHP array_flip() 函数:反转数组中的键名和对应关联的键值
- PHP array_combine() 函数:通过合并两个数组来创建一个新数组
- PHP array_count_values() 函数:统计数组中所有的值出现的次数
- PHP array_change_key_case() 函数
- PHP array_column() 函数:返回数组中指定的一列
- PHP array_diff_key() 函数:比较两个数组的键名,并返回差集
- PHP array_chunk() 函数
- PHP array_filter() 函数:用回调函数过滤数组中的元素
- PHP array_key_first() 函数
- PHP array_diff_ukey() 函数:比较两个数组的键名,并返回差集:
- PHP array_key_last() 函数
- PHP array() 函数:新建一个数组
- PHP array_keys() 函数
- PHP array_fill_keys() 函数:用给定的指定键名的键值填充数组
- PHP array_diff_uassoc() 函数:比较两个数组的键名和键值,并返回差集
- PHP array_fill() 函数:用给定的键值填充数组
- PHP array_key_exists() 函数
- PHP array_map() 函数