Forum und email

array_diff_assoc

(PHP 4 >= 4.3.0, PHP 5)

array_diff_assoc — Finder frem til forskellen på arrays med et ekstra tjek på nøgler

Beskrivelse

array array_diff_assoc ( array $array1 , array $array2 [, array $ ... ] )

array_diff_assoc() returnerer et array som inderholder alle de værdier fra array1 der ikke findes i nogen af de andre angivende arrays. Bemærk, at nøglerne bliver brugt til sammenligning, modsat array_diff().

Example#1 array_diff_assoc() eksempel

<?php
$array1 
= array("a" => "green""b" => "brown""c" => "blue""red");
$array2 = array("a" => "green""yellow""red");
$result array_diff_assoc($array1$array2);
print_r($result);
?>

Ovenstående eksempel vil udskrive:

Array
(
    [b] => brown
    [c] => blue
    [0] => red
)

I vores overstående eksempel, kan du se "a" => "green" er tilstede i begge arrays og kommer derfor ikke i det returnerede array. Derimod var 0 => "red" i det færdige array, fordi arrayet i nummer to parameter indholdte "red" med nøglen 1.

To værdier key => value bliver betegnet kun betegnet som ens hvis (string) $elem1 === (string) $elem2 . Altså hvis de er ens selvom de begge bliver lavet om til strenge.

Note: Denne funktion tjekker kun en dimension af et multidimensioneret array. Du kan selvfølgelig tjekke dybere i arrayet, f.eks. på denne måde: array_diff_assoc($array1[0], $array2[0]);.

Se også array_diff(), array_intersect() og array_intersect_assoc().