나는 비슷한 질문을 여기에서받습니다. https://stackoverflow.com/questions/18343559/compare-two-associative-arrays?noredirect=1#comment26938095_18343559 또는 여기 compare two associative array and display the difference 그러나 이것은 많은 전문가가 저에게 제안한 것처럼 쉽게 수정할 수 있도록 수정되었습니다. 제발 부정적인. 어떤 실수라도하면 나에게 말해줘. 나는 그걸 고치려고 노력할거야, 제발? 여기 배열 사이에 차이가 있습니다
내가 PHP 5.3을 사용하고있는 질문 ... 이며,이 배열은function diff($new,$old)
{
$del=array_diff_assoc($old,$new);
$add=array_diff_assoc($new,$old);
return $diff=array("old"=>$del, "news"=>$add);
}
이
배열은 다음과 같습니다 다음 함수를 생성 PDO MySQL의 쿼리에서 여러 과정을 통과하고, 사용 후 제공 ...
$aa= Array
(
[old] => Array
(
[cod] =>
[gender] => m
[title] =>
)
[news] => Array
(
[cod] =>
[gender] => f
[title] => Mr
[wl] => 255
[heigh] =>
)
)
나는 ([ '뉴스'] $의 AA [ '오래된'], $ 단)
$는 = array_merge_recursive 결합하여 다음과 같은 코드를 시도했다; 무엇을해야하는 경우입니다
...
는Array
(
[gender] => Array
(
[gender] => m
[gender] => f
)
[title] => Array
(
[title] =>
[title] => Mr
)
[gender] => Array
(
[gender] => m
[gender] => f
)
[wl] => Array
(
[wl] =>
[wl] => 255
)
)
(이것은 내가 정확히 원하는 결과입니다) .. 다음과 같은 배열을 생산하지만 내가 포함 원하지 않는 데이터가 보인다 모든 키는 [old] 배열에 존재하며 값이있는 [news] 배열의 키 이탈이 표시되면 [NEW] 배열에 같은 키가있는 값이 표시됩니다. 그러나 [news] 배열에 키가있는 경우 [old] 배열에 상응하는 키가 없으며 아무 값도 표시하지 않습니다.
어떤 생각, 내가 감사합니다 .... 난 그냥 당신이 논리적 오류를 만드는 방법 ...
key가 old에 있고 값이 new 인 경우 이전 값 또는 새 값 또는 둘 다 표시하겠습니까? – coderkane
두 가지를 모두 보여주고 싶습니다. 비교를 위해 사용할 수 있습니다 ... 오래된 것은 blabla이고 새로운 것은 blaba입니다 ... –