开门见山
我有一个如下所示的数组 ($is_anonymous_ary
):
array (
[80] => 1
[57] => 1
[66] =>
[60] =>
[90] => 1
)
还有另一个像这样的数组 ($user_id_ary
):
array (
[0] => 80
[1] => 30
[2] => 57
[3] => 89
[4] => 66
[5] => 60
[6] => 90
)
我需要根据第一个数组取消设置 $user_id_ary
上的值。因此,如果 $is_anonymous_ary
的值为 1(真),则从该数组中取出 key ,检查 $user_id_ary
,并取消设置 $ 的 key user_id_ary
具有来自 $is_anonymous_ary
的键的值。
我的描述有点复杂,这是我需要最终结果的方式:
user_id_ary = array(
[0] => 30
[1] => 89
[2] => 66
[3] => 60
)
如您所见,$is_anonymous_ary
中具有 TRUE
值的所有键均已消失在第二个数组中。它将第一个数组中的键作为第二个数组中的值。
希望我说清楚了。
最佳答案
尝试 array_filter :
$user_id_ary = array_filter($user_id_ary, function($var) use ($is_anonymous_ary) {
return !(isset($is_anonymous_ary[$var]) && $is_anonymous_ary[$var] === 1);
});
关于php - 阵列取消设置键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12726707/