2012-02-05 106 views
-1

假设您有两个用户角色数组及其状态(开或关)。获取两个阵列中具有不同值的元素

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

有没有一个PHP函数来获得这两个区别的数组?在这种情况下,我想这个落得:

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

尝试array_diffarray_diff_assoc,但那些只检查是否存在的键或值,当然他们会同时存在于。

+0

老好人'foreach'怎么样? – zerkms 2012-02-05 23:29:45

+3

'array_diff_assoc($ wanted,$ current)'有什么问题? – salathe 2012-02-05 23:36:23

+0

http://codepad.viper-7.com/Fcvj48 – Gordon 2012-02-05 23:36:56

回答

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) 
+0

是的,不知道我一直在做什么。感谢您回答。代码肯定得到了很多更清洁,嘿嘿。 – Svish 2012-02-06 08:59:22

相关问题