获取两个数组中具有不同值的元素

时间:2012-02-05 23:27:47

标签: php arrays

假设您有两个用户角色数组及其状态(打开或关闭)。

$current = array(1 => true, 2 => false, 3 => false, ...);
$wanted  = array(1 => true, 2 => true,  3 => false, ...);

是否有PHP函数来获取具有这两者之间差异的数组?在这种情况下,我想最终得到这个:

array(2 => true, ...);

尝试array_diffarray_diff_assoc,但这些只是检查键或值是否存在,当然它们都存在。

1 个答案:

答案 0 :(得分:0)

我不知道您尝试了什么,但您必须错误地使用array_diff_assoc()

$current = array(1 => true, 2 => false, 3 => false);
$wanted  = array(1 => true, 2 => true,  3 => false);
$diff    = array_diff_assoc($wanted, $current);
// array(2 => true)