PHP
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

array_diff> <array_diff_uassoc
Last updated: Fri, 10 Oct 2008

view this page in

array_diff_ukey

(PHP 5 >= 5.1.0)

array_diff_ukeyBerechnet den Unterschied von Arrays mittels einer Callbackfunktion für den Vergleich der Schlüssel

Beschreibung

array array_diff_ukey ( array $array1 , array $array2 [, array $ ... ], callback $key_compare_func )

array_diff_ukey() gibt ein Array zurück, welches alle Werte von array1 enthält, deren Schlüssel in keinem der anderen Argumente vorkommen. Beachten Sie, dass die Assoziativität erhalten bleibt. Diese Funktion ähnelt array_diff(), aber der Vergleich arbeitet auf den Schlüsseln anstatt den Werten.

Dieser Vergleich wird von einer benutzerdefinierten Callbackfunktion durchgeführt. Diese muss einen Integer kleiner als, genau gleich oder größer als Null zurückgeben, wenn das erste Argument entsprechend als kleiner, gleich oder größer als das Zweite betrachtet wird.

Beispiel #1 array_diff_ukey() Beispiel

<?php
function key_compare_func($key1$key2)
{
    if (
$key1 == $key2)
        return 
0;
    else if (
$key1 $key2)
        return 
1;
    else
        return -
1;
}

$array1 = array('blau'  => 1'rot'  => 2'gruen'  => 3'violett' => 4);
$array2 = array('gruen' => 5'blau' => 6'gelb' => 7'tuerkis'   => 8);

var_dump(array_diff_ukey($array1$array2'key_compare_func'));
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

array(2) {
  ["rot"]=>
  int(2)
  ["violett"]=>
  int(4)
}

Hinweis: Bitte beachten Sie, dass diese Funktion nur eine Dimension eines n-dimensionalen Arrays prüft. Natürlich kann man tiefere Dimensionen überprüfen, indem man array_diff_ukey($array1[0], $array2[0], 'callback_func'); verwendet.

Siehe auch array_diff(), array_udiff() array_diff_assoc(), array_diff_uassoc(), array_udiff_assoc(), array_udiff_uassoc(), array_diff_key(), array_intersect(), array_intersect_assoc(), array_intersect_uassoc(), array_intersect_key() und array_intersect_ukey().



add a note add a note User Contributed Notes
array_diff_ukey
jordancdarwin at googlemail dot com
15-Dec-2007 01:41
Note, also that when you are using a callback function you can use the text-placeholders as this function relies on the retval of the function you give.

So, instead of 1,0,-1 you can use TRUE and FALSE if using only two options.

Just thought it may help you

array_diff> <array_diff_uassoc
Last updated: Fri, 10 Oct 2008
 
 
show source | credits | sitemap | contact | advertising | mirror sites