检查基于另一个数组的数组中是否存在值

时间:2018-11-05 15:27:18

标签: php arrays

我有一个数组$check,该数组具有与商品和购物篮相关的代码-两者都具有键值。我想检查basket中是否存在offer中的值。

方案1,这将失败,因为购物篮不包含DEF:

Array
(
    [offer] => Array
        (
            [0] => 'ABC',
            [1] => 'DEF',
        ),
    [basket] => Array
        (
            [0] => 'ABC',
            [1] => '123',
            [2] => '456',
        )
)

方案2将通过,因为购物篮数组同时包含ABC和DEF

Array
(
    [offer] => Array
        (
            [0] => 'ABC',
            [1] => 'DEF',
        ),
    [basket] => Array
        (
            [0] => 'ABC',
            [1] => 'DEF',
            [2] => '123',
        )
)

比较数组的最有效方法是什么?

1 个答案:

答案 0 :(得分:1)

由于您没有努力解决问题,因此请努力了解这一点)

echo count($check['offer']) == count(array_intersect($check['basket'], $check['offer'])) ? 'All present' : 'Nope';