2012-02-05 3 views
-1

두 개의 사용자 역할 배열과 상태 (on 또는 off)가 있다고합시다.두 개의 배열에 서로 다른 값을 가진 요소를 가져옵니다.

$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

+3

'array_diff_assoc ($ wanted, $ current)'의 문제점은 무엇입니까? – salathe

+0

http://codepad.viper-7.com/Fcvj48 – Gordon

답변

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

그래, 내가 뭘했는지 모르겠다. 어쨌든 답변 해 주셔서 감사합니다. 코드는 확실히 이것으로 훨씬 더 깨끗해졌습니다, hehe. – Svish

관련 문제