SELFPHP

SELFPHP-Druckversion
Original Adresse dieser Seite:
http://www.selfphp.de/funktionsreferenz/array_funktionen/array_diff_assoc.php
© 2001-2017 E-Mail SELFPHP OHG, info@selfphp.de



array_diff_assoc


nach unten nach oben Befehl

array array_diff_assoc ( array $array1 , array $array2 [, array $... ] )



nach unten nach oben Version

(PHP 4 >= 4.3.0, PHP 5)



nach unten nach oben Beschreibung

Mit array_diff_assoc() können Sie zwei oder mehrere Arrays auf deren Inhalt vergleichen lassen und erhalten dann ein neues Array mit den Unterschieden zwischen den zu vergleichenden Arrays. Das Besondere an dieser Funktion ist, dass nicht nur die Werte gleich sein müssen, sondern auch deren Schlüssel!

Weiterhin ist zu beachten, das die Funktion nur eindimensionale Arrays vergleichen kann. Mehrdimensionale Arrays müssen daher explizit angegeben werden in der Form: array_diff_assoc( $array_1[0], $array_2[0] );


Als Rückgabewert erhalten Sie ein Array, das alle Werte aus $array1 enthält, die in keinem der anderen Arrays vorkommen.

  • Parameter der Funktion:

  • $array1
    Ein Array das verglichen werden soll.

  • $array2
    Ein Array mit dem verglichen werden soll.

  • $array x
    Weitere Arrays mit denen verglichen werden soll.



  • Siehe auch:




nach unten nach oben Beispiel


<?PHP

$array_1 
= array("a" => "Haus""b" => "Tor""c" => "Eingang""Wiese");
$array_2 = array("a" => "Haus""Zaun""Wiese");

echo 
'Ausgabe $array_1:' "\n----------";
print_r$array_1 );

echo 
'Ausgabe $array_2:' "\n----------";
print_r$array_2 );

echo 
'Ergebnis:' "\n----------";
$result array_diff_assoc$array_1$array_2 );
print_r$result );

?>




nach unten nach oben Ausgabe

An diesem Beispiel können Sie sehen, dass der Inhalt "[a] => Haus" in beiden Arrays identisch vorkommt, also als Schlüssel (a) und als Wert(Haus). Somit taucht dieses Paar auch nicht in dem Ergebnis-Array auf.

Bei dem Arrayinhalt "Wiese" verhält es sich anders. Der Wert "Wiese" kommt zwar auch in beiden Arrays vor, allerdings im Array 1 mit dem Schlüssel "0" und im Array 2 mit dem Schlüssel "1". Daher finden Sie im Ergebnis-Array auch den Wert "Wiese" mit dem Schlüssel "0" von Array 1.


Ausgabe $array_1:
----------
Array
(
    [a] => Haus
    [b] => Tor
    [c] => Eingang
    [0] => Wiese
)

Ausgabe $array_2:
----------
Array
(
    [a] => Haus
    [0] => Zaun
    [1] => Wiese
)

Ergebnis:
----------
Array
(
    [b] => Tor
    [c] => Eingang
    [0] => Wiese
)