Die Funktion array_diff_ukey()
wird verwendet, um die Schlüsselnamen von zwei (oder mehr) Arrays zu vergleichen und den Differenzsatz zurückzugeben.
HINWEIS: Diese Funktion verwendet eine benutzerdefinierte Funktion, um Schlüsselnamen zu vergleichen!
Die Funktion vergleicht die Schlüsselnamen von zwei (oder mehr) Arrays und gibt ein Array von Unterschieden zurück, die alle Schlüsselnamen in das zu vergleichen, ( Array1) enthalten (Array1 ), jedoch nicht in einem anderen Parameter -Array ( Array2 oder Array3 usw.).
Vergleichen Sie die Schlüsselnamen von zwei Arrays (mit den benutzerdefinierten Funktionen zum Vergleichen von Schlüsselnamen) und geben Sie den Differenz zurück:
<? Php Funktion myfunktion ( $ a , $ b ) { if ( $ a === $ b ) { Rückkehr 0 ; } Return ( $ a > $ b ) ? 1 : - 1 ; } $ a1 = array ( "a" => "rot" , "b" => "grün" , "c" => "blau" ) ; $ a2 = array ( "a" => "blau" , "b" => "schwarz" , "e" => "blau" ) ; $ result = Array_Diff_Ukey ( $ A1 , $ A2 , "MyFunction" ) ; print_r ( $ result ) ; ?>
Probieren Sie es selbst aus
Vergleichen Sie die Schlüsselnamen von drei Arrays (unter Verwendung von benutzerdefinierten Funktionen zum Vergleichen von Schlüsselnamen) und geben Sie die Differenz zurück:
<? Php Funktion myfunktion ( $ a , $ b ) { if ( $ a === $ b ) { Rückkehr 0 ; } Return ( $ a > $ b ) ? 1 : - 1 ; } $ a1 = array ( "a" => "rot" , "b" => "grün" , "c" => "blau" ) ; $ a2 = array ( "a" => "schwarz" , "b" => "gelb" , "d" => "braun" ) ; $ a3 = array ( "e" => "lila" , "f" => "weiß" , "a" => "gold" ) ; $ result = Array_Diff_Ukey ( $ A1 , $ A2 , $ A3 , "Myfunction" ) ; print_r ( $ result ) ; ?>
Probieren Sie es selbst aus
array_diff_ukey ( array1 , array2 , array3 ... , myfunction ) ;
Parameter | beschreiben |
---|---|
Array1 | Erforderlich. Das erste Array, das mit anderen Arrays verglichen wird. |
Array2 | Erforderlich. Das Array, das mit dem ersten Array verglichen wird. |
Array3 , ... | Optional. Andere Arrays, die mit dem ersten Array verglichen werden. |
Myfunktion | Erforderlich. Definiert eine Zeichenfolge, die die Vergleichsfunktion aufruft. Wenn der erste Parameter kleiner als der zweite Parameter ist, muss die Vergleichsfunktion eine Ganzzahl weniger als gleich oder höher als 0 zurückgeben. |
array_diff_ukey()
gibt ein Array zurück, das alle Werte von Schlüsselnamen enthält, die in Array1 , jedoch nicht in einem anderen Parameter -Array, angezeigt werden. Beachten Sie, dass die Beziehung unverändert bleibt. Im Gegensatz zu array_diff()
basieren Vergleiche eher auf Schlüsselnamen als auf Werten.
Dieser Vergleich erfolgt über eine von Benutzer bereitgestellte Rückruffunktion. Wenn der erste Parameter als kleiner angesehen wird als der zweite Parameter, muss er eine Ganzzahl weniger als, gleich, gleich oder größer als größer als zurückgeben.