In PHP müssen wir häufig Arrays verarbeiten, insbesondere wenn das Array mehrere mehrdimensionale Arrays enthält, die Notwendigkeit, den Wert einer bestimmten Spalte zu extrahieren und häufig zu deduplizieren. Lassen Sie uns heute diskutieren, wie Sie Array_Column- und Array_unique -Funktionen kombinieren, um den Wert einer Spalte in einem Array zu deduplizieren.
Zunächst können wir den Wert einer Spalte aus einem mehrdimensionalen Array durch die Funktion array_column extrahieren. Die Funktion von Array_Column besteht darin, den Wert einer bestimmten Spalte in einem mehrdimensionalen Array zurückzugeben, mit dem häufig bestimmte Informationen in der Datenliste extrahiert werden.
Angenommen, wir haben eine Reihe mehrerer Datensätze. Jeder Datensatz enthält Felder wie ID , Name und E -Mail , aus denen wir alle E -Mail -Adressen extrahieren möchten.
<?php
$data = [
['id' => 1, 'name' => 'Alice', 'email' => 'alice@m66.net'],
['id' => 2, 'name' => 'Bob', 'email' => 'bob@m66.net'],
['id' => 3, 'name' => 'Charlie', 'email' => 'alice@m66.net'],
];
$emails = array_column($data, 'email'); // Alle extrahieren email Adresse
print_r($emails);
?>
Nach dem Ausführen des obigen Codes ist das Ausgabeergebnis:
Array
(
[0] => alice@m66.net
[1] => bob@m66.net
[2] => alice@m66.net
)
Als nächstes verwenden wir die Funktion array_unique , um die extrahierte E -Mail -Adresse zu deduplizieren. Die Funktion array_unique löscht doppelte Werte im Array und behält nur eindeutige Werte bei.
<?php
$uniqueEmails = array_unique($emails); // In den schweren gehen
print_r($uniqueEmails);
?>
Nach dem Ausführen des obigen Codes ist das Ausgabeergebnis:
Array
(
[0] => alice@m66.net
[1] => bob@m66.net
)
Wie Sie sehen können, hat Array_unique die doppelte Adresse alice@m66.net erfolgreich entfernt und nur die eindeutige E -Mail -Adresse beibehalten.
Durch die Kombination dieser beiden Funktionen können wir den Betrieb der Extraktion einer bestimmten Spalte aus einem mehrdimensionalen Array und einer Deduplizierung implementieren. Hier finden Sie ein vollständiges Beispiel, das zeigt, wie Sie E -Mail -Spalten extrahieren und sie deduplizieren.
<?php
$data = [
['id' => 1, 'name' => 'Alice', 'email' => 'alice@m66.net'],
['id' => 2, 'name' => 'Bob', 'email' => 'bob@m66.net'],
['id' => 3, 'name' => 'Charlie', 'email' => 'alice@m66.net'],
];
$emails = array_column($data, 'email'); // Alle extrahieren email Adresse
$uniqueEmails = array_unique($emails); // In den schweren gehen
print_r($uniqueEmails);
?>
Die endgültige Ausgabe ist: