array_diffCalculează diferența dintre tablouri
&reftitle.description;
arrayarray_diffarrayarray1arrayarray2array...
Compară array1 cu unul sau mai multe tablouri și
întoarce valorile din array1 care nu sunt prezente în
celelalte tablouri.
&reftitle.parameters;
array1
Tabloul de referință
array2
Tabloul care se compară
...
Mai multe tablouri pentru a se compara
&reftitle.returnvalues;
Întoarce un array ce conține toate înregistrările din
array1 care nu sunt prezente nici în unul din celelalte
tablouri. Cheile din tabloul array1 sunt păstrate.
&reftitle.examples;
Exemplu array_diff
"green", "red", "blue", "red");
$array2 = array("b" => "green", "yellow", "red");
$result = array_diff($array1, $array2);
print_r($result);
?>
]]>
Aparițiile multiple în $array1 sunt toate tratate în același mod.
Aceasta va afișa :
blue
)
]]>
Exemplu array_diff cu tipuri ce nu se potrivesc
Două elemente sunt considerate egale dacă și numai dacă
(string) $elem1 === (string) $elem2. Adică atunci când
reprezentarea sub formă de
șir de caractere este aceeași.
v = $v;
}
public function __toString() {
return $this->v;
}
}
$source = [new S('a'), new S('b'), new S('c')];
$filter = [new S('b'), new S('c'), new S('d')];
$result = array_diff($source, $filter);
// $result acum conține o instanță a S('a');
?>
]]>
Pentru a utiliza o funcție de comparație alternativă vedeți array_udiff.
&reftitle.notes;
Această funcție verifică numai o dimensiune a unui tablou n-dimensional.
Desigur că puteți să verificați dimensiunile mai adânci utilizând
array_diff($array1[0], $array2[0]);.
&reftitle.seealso;
array_diff_assocarray_udiffarray_intersectarray_intersect_assoc