php array_intersect()函数查找两个或多个数组之间的公共元素

分类:知识百科 日期: 点击:0

php array_intersect()函数用于查找两个或多个数组之间的公共元素。该函数返回一个数组,其中包含了所有在输入数组中都存在的元素。

使用方法

该函数有两种使用方法,一种是传入多个数组,另一种是传入一个数组,其中包含多个数组。

//传入多个数组
$array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red");
$array2 = array("a" => "green", "yellow", "red");
$result = array_intersect($array1, $array2);
print_r($result);

//输出结果
Array
(
    [a] => green
    [0] => red
)

//传入一个数组,其中包含多个数组
$array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red");
$array2 = array("a" => "green", "yellow", "red");
$array3 = array("a" => "green", "b" => "yellow", "blue", "red");
$result = array_intersect($array1, $array2, $array3);
print_r($result);

//输出结果
Array
(
    [a] => green
    [0] => red
)

从上面的例子可以看出,array_intersect()函数返回的是输入数组中都存在的元素,而不是其中的一个数组。

array_intersect()函数也支持多维数组,只要输入的数组中的所有元素都存在,就会返回该元素。

$array1 = array("a" => array("green", "red"), "b" => array("green", "yellow"), "c" => array("blue", "red"));
$array2 = array("a" => array("green", "yellow"), "b" => array("green", "yellow"), "c" => array("blue", "red"));
$result = array_intersect($array1, $array2);
print_r($result);

//输出结果
Array
(
    [a] => Array
        (
            [0] => green
            [1] => red
        )

    [b] => Array
        (
            [0] => green
            [1] => yellow
        )

    [c] => Array
        (
            [0] => blue
            [1] => red
        )

)

array_intersect()函数还支持比较回调函数,可以用来比较输入数组中的元素。

$array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red");
$array2 = array("a" => "GREEN", "B" => "brown", "yellow", "red");

$result = array_intersect($array1, $array2, "strcasecmp");
print_r($result);

//输出结果
Array
(
    [a] => green
    [b] => brown
    [0] => red
)

php array_intersect()函数可以用来查找两个或多个数组之间的公共元素,可以比较多维数组和使用回调函数来比较元素。

标签:

版权声明

1. 本站所有素材,仅限学习交流,仅展示部分内容,如需查看完整内容,请下载原文件。
2. 会员在本站下载的所有素材,只拥有使用权,著作权归原作者所有。
3. 所有素材,未经合法授权,请勿用于商业用途,会员不得以任何形式发布、传播、复制、转售该素材,否则一律封号处理。
4. 如果素材损害你的权益请联系客服QQ:77594475 处理。