So entfernen Sie doppelte Werte aus dem zweidimensionalen PHP-Array

PHPz
Freigeben: 2023-04-20 15:19:29
Original
574 Leute haben es durchsucht

In PHP sind zweidimensionale Arrays eine sehr beliebte Datenstruktur. Wenn wir jedoch Daten in einem zweidimensionalen Array deduplizieren müssen, können einige Schwierigkeiten auftreten.

In diesem Artikel erfahren Sie, wie Sie zweidimensionale Arrays in PHP deduplizieren und eindeutige Werte beibehalten. Wir werden zwei gängige Vorgehensweisen besprechen: die Verwendung einer Schleife und die Verwendung der Funktion array_map().

  1. Verwenden Sie eine Schleife

Die Verwendung einer Schleife zum Durchlaufen eines zweidimensionalen Arrays, um doppelte Werte zu finden und diese zu löschen, ist die einfachste Methode. Hier ist ein Beispielcode:

function unique_arr($array2D){
    foreach ($array2D as $k=>$v){
        $tem[$k] = serialize($v);
    }
    $tem = array_unique($tem); 
    foreach ($tem as $k=>$v){
        $array[$k] = unserialize($v);
    }
    return $array;
}
Nach dem Login kopieren

Im obigen Code verwenden wir zunächst eine foreach-Schleife, um das zweidimensionale Array zu durchlaufen, das Array zu serialisieren und es in einem temporären Array $tem zu speichern. Dann verwenden wir die Funktion array_unique(), um doppelte Werte in $tem zu entfernen. Schließlich verwenden wir erneut die foreach-Schleife, um sie zu deserialisieren und im Array $array zu speichern. Letztendlich gibt die Funktion ein sich nicht wiederholendes zweidimensionales Array zurück.

  1. Verwenden der Funktion array_map()

In PHP kann die Funktion array_map() verwendet werden, um eine Rückruffunktion für jedes Element im Array auszuführen. Das Entfernen doppelter Werte aus einem zweidimensionalen Array kann auch einfach mit der Funktion array_map() erfolgen. Das Codebeispiel lautet wie folgt:

function unique_arr($array2D){
    $serialize_array = array_map('serialize', $array2D);
    $unique_serialize_array = array_unique($serialize_array);
    $array = array_map('unserialize', $unique_serialize_array);
    return $array;
}
Nach dem Login kopieren

Wie bei der ersten Methode serialisieren wir in diesem Beispielcode zunächst das Array und speichern es in einem neuen Array $serialize_array. Als nächstes verwenden wir die Funktion array_unique(), um doppelte Werte in $serialize_array zu entfernen. Schließlich verwenden wir die Funktion array_map(), um das serialisierte Array zu deserialisieren und in $array zu speichern, wodurch wir letztendlich ein nicht dupliziertes zweidimensionales Array zurückgeben.

3. Zusammenfassung

In PHP gibt es zwei gängige Möglichkeiten, doppelte Werte aus einem zweidimensionalen Array zu entfernen: die Verwendung einer Schleife und die Verwendung der Funktion array_map(). Obwohl beide Methoden Funktionalität erreichen können, ist die Verwendung der Funktion array_map() aufgrund ihrer einfachen und verständlichen Natur einfacher zu lesen und zu verstehen.

Kurz gesagt, wenn wir mit zweidimensionalen Arrays arbeiten, müssen wir auf die verschiedenen Operationen des Arrays achten, um unsere Daten effizienter und bequemer verarbeiten zu können.

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

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage