php多个数组求交集,PHP比较多个数组间的交集

array_intersect() 函数

定义和用法

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

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

说明

array_intersect() 函数返回两个或多个数组的交集数组。

结果数组包含了所有在被比较数组中,也同时出现在所有其他参数数组中的值,键名保留不变。

注释:仅有值用于比较。

$a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");

$a2=array("e"=>"red","f"=>"black","g"=>"purple");

$a3=array("a"=>"red","b"=>"black","h"=>"yellow");

$result=array_intersect($a1,$a2,$a3);

print_r($result);

// 输出Array ( [a] => red )

?>

array_intersect_key() 函数

定义和用法

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

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

说明

array_intersect_key() 函数使用键名比较计算数组的交集。

array_intersect_key() 返回一个数组,该数组包含了所有出现在被比较的数组中并同时出现在所有其它参数数组中的键名的值。

注释:仅有键名用于比较。

$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);

// 输出Array ( [c] => blue )

?>

array_intersect_assoc() 函数

定义和用法

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

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

说明

array_intersect_assoc() 函数返回两个或多个数组的交集数组。

与 array_intersect() 函数 不同的是,本函数除了比较键值,还比较键名。返回的数组中元素的键名保持不变。<?php

$a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");

$a2=array("a"=>"red","b"=>"green","g"=>"blue");

$a3=array("a"=>"red","b"=>"green","g"=>"blue");

$result=array_intersect_assoc($a1,$a2,$a3);

print_r($result);

// 输出Array ( [a] => red [b] => green )

?>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值