Zum Inhalt springen

Die array_diff-Funktion in PHP

Die array_diff-Funktion in PHP ist eine integrierte Funktion, die zum Vergleichen von Arrays verwendet wird und die Werte zurückgibt, die in einem Array vorhanden sind, aber nicht in einem anderen. Diese Funktion ist besonders nützlich, wenn Sie den Unterschied zwischen zwei Arrays ermitteln müssen, beispielsweise wenn Sie Daten in einer Datenbank mit einer Liste von Werten vergleichen möchten, die in ein Formular eingegeben wurden.

So funktioniert array_diff

Die Funktion array_diff vergleicht zwei oder mehr Arrays und gibt ein Array zurück, das die Werte enthält, die im ersten Array vorhanden sind, aber in keinem der nachfolgenden Arrays. Der Vergleich erfolgt strikt wertebasiert (Schlüssel werden ignoriert). Wenn ein Wert aus dem ersten Array in den anderen Arrays nicht gefunden wird, wird er zum Ergebnis hinzugefügt.

Syntax

Die Syntax für die array_diff-Funktion lautet wie folgt:

Syntax der PHP-Funktion array_diff

php
array array_diff (array $array1, array $array2 [, array $... ]);

Der Parameter array1 ist das erste Array, das Sie vergleichen möchten. Der Parameter array2 ist das zweite Array, gegen das Sie vergleichen möchten. Sie können auch weitere Arrays hinzufügen, indem Sie zusätzliche Parameter angeben.

Beispiele

Werfen wir einen Blick auf einige Beispiele, wie Sie die Funktion array_diff in Ihrem PHP-Code verwenden können.

PHP-Beispiel zur Verwendung der array_diff-Funktion

php
<?php

$array1 = [1, 2, 3];
$array2 = [2, 3, 4];

$result = array_diff($array1, $array2);
print_r($result);

?>

Dieser Code gibt Folgendes aus:


console
Array ( [0] => 1 )

Wie Sie sehen können, hat die Funktion array_diff den Wert 1 zurückgegeben, der in $array1 vorhanden ist, aber nicht in $array2. Beachten Sie, dass array_diff die ursprünglichen Schlüssel des ersten Arrays beibehält.

PHP-Beispiel mit Zeichenfolgenwerten (Groß-/Kleinschreibung)

php
<?php

$array1 = ['apple', 'Banana', 'cherry'];
$array2 = ['apple', 'banana', 'date'];

$result = array_diff($array1, $array2);
print_r($result);

?>

Dieser Code gibt Folgendes aus:


console
Array ( [1] => Banana )

In diesem Beispiel ist der Zeichenfolgenvergleich case-sensitiv (Groß-/Kleinschreibung wird berücksichtigt). Da 'Banana' nicht exakt mit 'banana' übereinstimmt, wird es als Unterschied zurückgegeben.

Fazit

Die Funktion array_diff ist ein nützliches Werkzeug zum Vergleichen von Arrays und zum Ermitteln der Unterschiede zwischen ihnen. Egal, ob Sie mit Daten aus einer Datenbank arbeiten oder einfach Listen von Werten vergleichen – die Funktion array_diff hilft Ihnen dabei, schnell und einfach die Werte zu finden, die nur in einem Array vorhanden sind. Durch die Verwendung dieser Funktion in Ihrem PHP-Code können Sie Ihren Entwicklungsprozess optimieren und das Auffinden sowie Verarbeiten der benötigten Daten erleichtern.

Praxis

Was macht die array_diff()-Funktion in PHP?

Finden Sie das nützlich?

Dual-run-Vorschau — vergleichen Sie mit den Symfony-Routen live.