2012-02-05 69 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

相關問題