PHP
Referenzliste
array_udiff_assoc
Array-Funktionen
Befehl:
array array_udiff_assoc ( array $array1 , array $array2 [, array $ ... ], callback $data_compare_func )
Parameter-Liste:
Beschreibung | |
---|---|
Die erste Anordnung. | |
Das zweite Array. | |
Die Vergleichsfunktion muss einen Integer kleiner als, gleich oder grösser als Null zurück, wenn das erste Argument entsprechend als kleiner, gleich oder größer als die zweite. |
Rückgabewerte:
array_udiff_assoc() gibt ein array mit allen Werten aus
array1
, die nicht in einem der anderen Argumente enthalten sind. Beachten Sie, dass die Tasten in den Vergleich anders als array_diff() und verwendet array_udiff(). Der Vergleich der Daten-Arrays unter Verwendung eines vom Benutzer bereitgestellten Callback ausgeführt. In diesem Aspekt gegenüber dem Verhalten der array_diff_assoc() das Verhalten ist was nutzt interne Funktion zum Vergleich. Beschreibung:
array_udiff_assoc() gibt ein Array mit allen Werten von array1, welche in keinem der anderen Argumente enthalten sind, zurück. Beachten Sie, dass Schlüssel anders als von array_diff() und array_udiff() für den Vergleich herangezogen werden. Der Vergleich der Arrayinhalte wird von einer benutzerdefinierten Callbackfunktion durchgeführt. In dieser Hinsicht ist das Verhalten anders als jenes von array_diff_assoc(), welche eine eingebaute Vergleichsfunktion verwendet.
Aktiv in Version:
(PHP 5, PHP 7)
Hinweis:
Hinweis:
Bitte beachten Sie, dass diese Funktion nur eine Dimension eines n-dimensionalen Arrays überprüft. Natürlich können Sie tiefere Dimensionen prüfen, indem Sie array_udiff_assoc($array1[0], $array2[0], "data_compare_func"); verwenden.
Siehe auch:
Ermittelt die Unterschiede zwischen Arrays
Berechnet den Unterschied zwischen Arrays mit zusätzlicher Indexprüfung
Berechnet den Unterschied von Arrays mit zusätzlicher Indexprüfung, welche durch eine benutzerdefinierte Funktion vorgenommen wird
Ermittelt den Unterschied zwischen Arrays mittels einer Callbackfunktion für den Datenvergleich
Ermittelt die Schnittmenge von Arrays mit zusätzlicher Indexprüfung, vergleicht Daten und Schlüssel mittels einer Callbackfunktion
Ermittelt die Schnittmenge von Arrays
Ermittelt die Schnittmenge von Arrays mit Indexprüfung
Ermittelt die Schnittmenge von Arrays, vergleicht Daten mittels einer Callbackfunktion
Ermittelt die Schnittmenge von Arrays mit zusätzlicher Indexprüfung, vergleicht Daten mittels einer Callbackfunktion
Ermittelt die Schnittmenge von Arrays mit zusätzlicher Indexprüfung, vergleicht Daten und Schlüssel mittels einer Callbackfunktion
array_udiff_assoc() - Beispiel:
Eingabe:
<?php class cr { private $priv_member; function cr($val) { $this->priv_member = $val; } function comp_func_cr($a, $b) { if ($a->priv_member === $b->priv_member) return 0; return ($a->priv_member > $b->priv_member)? 1:-1; } } $a = array("0.1" => new cr(9), "0.5" => new cr(12), 0 => new cr(23), 1=> new cr(4), 2 => new cr(-15),); $b = array("0.2" => new cr(9), "0.5" => new cr(22), 0 => new cr(3), 1=> new cr(4), 2 => new cr(-15),); $result = array_udiff_assoc($a, $b, array("cr", "comp_func_cr")); print_r($result); ?>
Ausgabe:
Array
(
[0.1] => cr Object
(
[priv_member:private] => 9
)
[0.5] => cr Object
(
[priv_member:private] => 12
)
[0] => cr Object
(
[priv_member:private] => 23
)
)
(
[0.1] => cr Object
(
[priv_member:private] => 9
)
[0.5] => cr Object
(
[priv_member:private] => 12
)
[0] => cr Object
(
[priv_member:private] => 23
)
)
Beschreibung:
In unserem Beispiel sehen Sie, dass das "1" => new cr(4) Paar in beiden Arrays enthalten ist und daher nicht in der Ausgabe der Funktion auftaucht.
F�r den Vergleich wird die benutzerdefinierte Funktion verwendet. Diese muss einen Integer kleiner als, genau gleich oder gr�sser als Null zur�ckgeben, wenn das erste Argument entsprechend als kleiner, gleich oder gr�sser als das Zweite betrachtet wird.
F�r den Vergleich wird die benutzerdefinierte Funktion verwendet. Diese muss einen Integer kleiner als, genau gleich oder gr�sser als Null zur�ckgeben, wenn das erste Argument entsprechend als kleiner, gleich oder gr�sser als das Zweite betrachtet wird.
Array-Funktionen