Heim > Artikel > Backend-Entwicklung > So entfernen Sie doppelte Werte aus dem zweidimensionalen PHP-Array
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().
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; }
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.
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; }
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!