Du bist hier: Tips » Scripte » PHP
PHP
Referenzliste

array_udiff

Array-Funktionen

    Befehl:
array array_udiff ( array $array1 , array $array2 [, array $ ... ], callback $data_compare_func )


    Parameter-Liste:
NameBeschreibung
array1Die erste Anordnung.
array2Das zweite Array.
value_compare_funcDie 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
        )

)

Array-Funktionen