zwei arrays vergleichen

palio

Grünschnabel
Hallo,
ich möchte zwei Arrays vergleichen:
die Ausgabe soll ein array gespeichert werden, mit gleichen keys, aber unterschiedlichen values. Ich habe probiert die PHP-Funktionen array_intersect_key und array_diff_key, aber ich bekomme nicht die richtige Lösung.
Ein Beispiel:
Code:
$array1 = array(
 "one" => "rot",
 "two" => "blau",
 "three" => "black"
);

$array1 = array(
 "one" => "rot",
 "two" => "weiss",
"three" => "black"
);
Das resultat sollte dann folgendes aussehen:
Code:
$array3 = array(
 "two" => "blau",
  "two" => "weiss",
);

Danke !
 
Hallo @palio

Du kannst in einem assoziativen Array nicht zweimal den gleichen Key haben ;)
Ein key ist als unique geschützt.
Irgendwie auch logisch, denn es ist ja ein eindeutiges merkmal für das element.

Gruß SimonErich
 
Vielen Dank für die schnelle Antwort.
Mir interessiert die values. die keys können umbenannt werden.
wie bekomme ich jetzt die values?
 
habe das Problem gelöst und zwar:

Code:
$c = array_intersect_key ($a, $b);
foreach ( $c as $key=>$value){
if($value!=$b[$key]){
print_r (array('key'=>$key,'1'=>$value,'2'=>$b[$key]));

}
 
Zuletzt bearbeitet:
Zurück