PHP
Referenzliste
array_udiff
Array-Funktionen
Befehl:
array array_udiff ( array $array1 , array $array2 [, array $ ... ], callback $data_compare_func )
Parameter-Liste:
Beschreibung | |
---|---|
Die erste Anordnung. | |
Das zweite Array. | |
Die Callback-Vergleichsfunktion. Die Vergleichsfunktion muss einen Integer kleiner als, gleich oder größer als Null zurück, wenn das erste Argument entsprechend als kleiner, gleich oder größer als die zweite. |
Rückgabewerte:
Gibt ein Array mit allen Werten von
array1
, die nicht in einem der anderen Argumente enthalten sind. Beschreibung:
array_udiff() gibt ein Array mit allen Werten von array1, welche in keinem der anderen Argumente enthalten sind, zurück. Beachten Sie, dass Schlüssel erhalten bleiben. Für den Vergleich der Daten wird data_compare_func herangezogen. 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. Dies ist anders als array_diff(), in der eine eingebaute Funktion für den Vergleich der Indizes verwendet wird.
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($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() - 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($a, $b, array("cr", "comp_func_cr")); print_r($result); ?>
Ausgabe:
Array
(
[0.5] => cr Object
(
[priv_member:private] => 12
)
[0] => cr Object
(
[priv_member:private] => 23
)
)
(
[0.5] => cr Object
(
[priv_member:private] => 12
)
[0] => cr Object
(
[priv_member:private] => 23
)
)
Array-Funktionen