-2
제품 피드에서 2 개의 매우 큰 배열이 있고 둘을 비교하고 일치하지 않는 필드를 반환하고 싶습니다.PHP는 2 개의 다차원 배열을 비교하고 차이를 반환합니다.
array_diff()를 사용해 보았지만 다차원 배열에서는 작동하지 않습니다.
사용할 수있는 기능이 있습니까?
제품 피드에서 2 개의 매우 큰 배열이 있고 둘을 비교하고 일치하지 않는 필드를 반환하고 싶습니다.PHP는 2 개의 다차원 배열을 비교하고 차이를 반환합니다.
array_diff()를 사용해 보았지만 다차원 배열에서는 작동하지 않습니다.
사용할 수있는 기능이 있습니까?
array_diff의 주석에 기능이 구현되어 있습니다.
function arrayRecursiveDiff($aArray1, $aArray2) {
$aReturn = array();
foreach ($aArray1 as $mKey => $mValue) {
if (array_key_exists($mKey, $aArray2)) {
if (is_array($mValue)) {
$aRecursiveDiff = arrayRecursiveDiff($mValue, $aArray2[$mKey]);
if (count($aRecursiveDiff)) { $aReturn[$mKey] = $aRecursiveDiff; }
} else {
if ($mValue != $aArray2[$mKey]) {
$aReturn[$mKey] = $mValue;
}
}
} else {
$aReturn[$mKey] = $mValue;
}
}
return $aReturn;
}
고마워, 완벽한 작품! – TheNickyYo
의 중복 가능성 [PHP -이 개 다차원 배열을 비교] (http://stackoverflow.com/questions/19106001/php-comparing-two-multidimensional-arrays) –
아니 그, 텍스트 본문을 읽기 시도하지 .. 제목은 몸을 더 반영하도록 업데이 트되었습니다 .. – TheNickyYo