Heim  >  Artikel  >  Backend-Entwicklung  >  So entfernen Sie doppelte Elemente aus einem Array in PHP

So entfernen Sie doppelte Elemente aus einem Array in PHP

小老鼠
小老鼠Original
2023-05-25 17:19:061474Durchsuche

So entfernen Sie doppelte Elemente in einem Array in PHP: 1. Verwenden Sie die Funktion „array_unique()“, um doppelte Daten im Array zu entfernen. 2. Durchlaufen Sie eine foreach-Schleife und definieren Sie ein neues Array, um nicht doppelte Daten zu speichern. 3. Verwenden Sie die Funktionen array_flip() und array_keys(), um das deduplizierte Array abzurufen. 4. Verwenden Sie die Funktion array_filter(), um das ursprüngliche Array zu deduplizieren, indem Sie diese Funktion in Kombination mit einer anonymen Funktion verwenden.

So entfernen Sie doppelte Elemente aus einem Array in PHP

Das Betriebssystem dieses Tutorials: Windows 10-System, PHP-Version 8.1.3, Dell G3-Computer

php-Methode zum Entfernen doppelter Elemente in einem Array

Methode 1: Verwenden Sie array_unique() Funktion

php Die Funktion array_unique() kann verwendet werden, um doppelte Daten aus einem Array zu entfernen. Diese Funktion akzeptiert ein Array als Argument und gibt ein neues Array zurück, das keine doppelten Werte enthält.

Beispielcode:

$arr = array(1, 2, 2, 3, 4, 4);
$arr_unique = array_unique($arr);
print_r($arr_unique);

Ausgabeergebnis:

Array
(
    [0] => 1
    [1] => 2
    [3] => 3
    [4] => 4)

Methode 2: Foreach-Schleifendurchquerung verwenden

Zusätzlich zur Verwendung der Funktion array_unique() können wir die Deduplizierung auch durch Schleifendurchquerung erreichen. Die spezifischen Schritte sind wie folgt:

Definieren Sie ein neues Array zum Speichern eindeutiger Daten. Durchlaufen Sie das ursprüngliche Array, vergleichen Sie jedes Element einzeln mit jedem Element im neuen Array, überspringen Sie, wenn Duplikate vorhanden sind, und fügen Sie das Element dem neuen Array hinzu, wenn keine Duplikate vorhanden sind.

Beispielcode:

$arr = array(1, 2, 2, 3, 4, 4);
$new_arr = array();
foreach ($arr as $value) {
    if (!in_array($value, $new_arr)) {
        $new_arr[] = $value;
    }
}
print_r($new_arr);

Ausgabeergebnis:

Array
(
    [0] => 1
    [1] => 2
    [3] => 3
    [4] => 4)

Methode 3: Verwenden Sie die Funktionen array_flip() und array_keys()

Die Funktion array_flip() in PHP kann zum Austauschen der Schlüssel und Werte in verwendet werden Array. Durch den Austausch der Schlüsselwerte des ursprünglichen Arrays und die anschließende Verwendung der Funktion array_keys() zum Abrufen der Schlüssel kann das deduplizierte Array erhalten werden.

Beispielcode:

$arr = array(1, 2, 2, 3, 4, 4);
$new_arr = array_keys(array_flip($arr));
print_r($new_arr);

Ausgabeergebnis:

Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4)

Methode 4: Funktion array_filter() verwenden

Die Funktion array_filter() in PHP kann zum Filtern von Elementen in einem Array verwendet werden. Wir können das ursprüngliche Array deduplizieren, indem wir diese Funktion in Kombination mit einer anonymen Funktion verwenden.

Beispielcode:

$arr = array(1, 2, 2, 3, 4, 4);
$new_arr = array_filter($arr, function ($value) {
    static $data = [];
    if (in_array($value, $data)) {
        return false;
    } else {
        $data[] = $value;
        return true;
    }
});
print_r($new_arr);

Ausgabeergebnis:

Array
(
    [0] => 1
    [1] => 2
    [3] => 3
    [4] => 4)

Zusammenfassung:

Es gibt viele Möglichkeiten, doppelte Daten in Arrays in PHP zu entfernen, und die oben vorgestellten Methoden sind nur einige davon. Wir können geeignete Deduplizierungsmethoden basierend auf unterschiedlichen Anforderungen und Datenstrukturen auswählen, um die Effizienz und Stabilität des Programms zu verbessern.

Das obige ist der detaillierte Inhalt vonSo entfernen Sie doppelte Elemente aus einem Array in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn