首页 > 解决方案 > 多维数组值与另一个索引数组值匹配,然后从 PHP 7 中的多维中删除值

问题描述

我有以下两个数组

    $firstArray = Array
(
    [1] => Array
        (
            [MemberList] => Array
                (
                    [0] => 100
                    [1] => 5d6
                    [2] => 5d7
                )
        )
    [3] => Array
        (
            [MemberList] => Array
                (
                    [0] => 5d8
                    [1] => 200
                )
        )
)


$secondArray = Array
(
    [0] => 100
    [1] => 200
)

我的问题是,如果假设$secondArray数组值与$firstArray数组匹配,那么我必须从$firstArray

我的预期输出

$firstArray = Array
(
    [1] => Array
        (
            [MemberList] => Array
                (
                    [0] => 5d6
                    [1] => 5d7
                )
        )
    [3] => Array
        (
            [MemberList] => Array
                (
                    [0] => 5d8
                )
        )
)

标签: phpphp-7

解决方案


$newArray = array_map(
    function ($v) use ($secondArray) { 
        return ['MemberList' => array_diff($v['MemberList'], $secondArray)]; 
    }, 
    $firstArray
);

在这里拉小提琴。


推荐阅读