PHP比较两个多维数组

PHP比较两个多维数组,php,arrays,multidimensional-array,Php,Arrays,Multidimensional Array,我有两个这样的多维数组: 来宾允许数组 Array ( [0] => 5 [1] => 2 [2] => 3 ) 第二个是这样的 Array ( [0] => Array ( [property_id] => 6 [guest_allow] => 2 ) [1] => Array ( [

我有两个这样的多维数组: 来宾允许数组

Array
(
    [0] => 5
    [1] => 2
    [2] => 3
)
第二个是这样的

   Array
(
    [0] => Array
        (
            [property_id] => 6
            [guest_allow] => 2
        )

    [1] => Array
        (
            [property_id] => 9
            [guest_allow] => 3
        )

    [2] => Array
        (
            [property_id] => 62
            [guest_allow] => 2
        )

    [3] => Array
        (
            [property_id] => 72
            [guest_allow] => 3
        )

    [4] => Array
        (
            [property_id] => 76
            [guest_allow] => 4
        )

    [5] => Array
        (
            [property_id] => 80
            [guest_allow] => 5
        )

    [6] => Array
        (
            [property_id] => 84
            [guest_allow] => 3
        )
)
因此,我必须匹配来宾数组,所有值都存在于第二个数组中,并且我必须检查来宾值是否小于第二个
guest\u allow
数组。如果没有匹配的单值,则返回空数组。如果匹配值如此,则只返回匹配值。我想要这样的返回数组:

       Array
(
    [0] => Array
        (
            [property_id] => 6
            [guest_allow] => 2
        )

    [1] => Array
        (
            [property_id] => 9
            [guest_allow] => 3
        )

    [2] => Array
        (
            [property_id] => 62
            [guest_allow] => 2
        )

    [3] => Array
        (
            [property_id] => 72
            [guest_allow] => 3
        )

    [4] => Array
        (
            [property_id] => 84
            [guest_allow] => 3
        )
    [5] => Array
        (
            [property_id] => 76
            [guest_allow] => 4
        )
)

是否可以返回这种类型的数组?谢谢。

假设
$guestar
是您的来宾阵列,
$secondArr
是您的第二个阵列,解决方案如下:

$first = [1, 2, 3];
$second = [
    ['property_id' => 6, 'guest_allow' => 2],
    ['property_id' => 66, 'guest_allow' => 3],
    ['property_id' => 76, 'guest_allow' => 4],
    ['property_id' => 86, 'guest_allow' => 2]
];

$result = array_filter($second, function($el) use ($first) {
    return in_array($el['guest_allow'], $first);
});
foreach($secondArr as $key => $arr){
    if(!in_array($arr['guest_allow'], $guestArr)){
        unset($secondArr[$key]);
    }
}

// display $secondArr array
var_dump($secondArr);

以下是。

假设
$guestar
是您的来宾数组,
$secondArr
是您的第二个数组,解决方案如下:

foreach($secondArr as $key => $arr){
    if(!in_array($arr['guest_allow'], $guestArr)){
        unset($secondArr[$key]);
    }
}

// display $secondArr array
var_dump($secondArr);

以下是。

我可以比较大于或等于吗?@Dhanasri在这里使用大于或等于的方式吗?我可以比较大于或等于吗?@Dhanasri在这里使用大于或等于的方式吗?