Deduplizieren mehrdimensionaler Arrays basierend auf bestimmten Werten in PHP
Dieser Artikel befasst sich mit dem Problem der Entfernung doppelter Einträge aus einem zweidimensionalen Array basiert ausschließlich auf einem bestimmten Wert innerhalb jedes verschachtelten Arrays.
Problem Beschreibung
Das bereitgestellte Array enthält Unterarrays mit drei Werten: einem Namen, einem Nachnamen und einer E-Mail-Adresse. Das Ziel besteht darin, Unterarrays mit doppelten E-Mail-Adressen zu entfernen und gleichzeitig die Reihenfolge der verbleibenden Arrays beizubehalten.
Lösung
Der folgende Ansatz nutzt eine gemeinsame Eigenschaft von PHP-Arrays : ihre eindeutigen Indizes.
$newArr = array(); foreach ($array as $val) { $newArr[$val[2]] = $val; } $array = array_values($newArr);
Diese Lösung beinhaltet die Erstellung eines neuen Arrays mit E-Mail-Adressen als Schlüssel. Der Wert für jeden Schlüssel wird auf das entsprechende Unterarray festgelegt. Dadurch wird jede E-Mail-Adresse eindeutig mit dem entsprechenden Unterarray verknüpft, wodurch Duplikate effektiv entfernt werden. Das Endergebnis ist ein Array mit den gewünschten deduplizierten Unterarrays, die Indizes können jedoch geändert werden.
Das obige ist der detaillierte Inhalt vonWie kann ich ein mehrdimensionales PHP-Array basierend auf einem bestimmten Wert deduplizieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!