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

So entfernen Sie doppelte Werte in einem Array in PHP

PHPz
PHPzOriginal
2023-04-18 14:10:30534Durchsuche

In PHP sind Arrays ein sehr häufig verwendeter Datentyp. Manchmal müssen wir sicherstellen, dass jedes Element im Array eindeutig ist, das heißt, es gibt keine Duplikate. In diesem Artikel erfahren Sie, wie Sie doppelte Werte in einem Array löschen, was Ihnen dabei helfen kann, Arrays besser zu handhaben.

Methode 1: Verwenden Sie die in PHP integrierte Funktion array_unique()

Die von PHP bereitgestellte Funktion array_unique() kann verwendet werden, um doppelte Werte aus dem zu entfernen Array und gibt einen neuen eindeutigen Wert zurück, der doppelte Werte enthält.

Der Beispielcode lautet wie folgt:

$array = array("a", "b", "c", "b", "d", "a");
$newArray = array_unique($array);
print_r($newArray);

Führen Sie den obigen Code aus und Sie erhalten die folgenden Ergebnisse:

Array
(
    [0] => a
    [1] => b
    [2] => c
    [4] => d
)

Methode 2: Schleife verwenden Traversal

# 🎜🎜#In PHP können wir die Loop-Traversal-Methode verwenden, um den Zweck der Deduplizierung zu erreichen. Die spezifische Methode besteht darin, das Array zu durchlaufen, jedes Element mit anderen Elementen im Array zu vergleichen und das Element zu löschen, wenn Duplikate gefunden werden. Das endgültig erhaltene Array ist das Array nach der Deduplizierung.

Der Beispielcode lautet wie folgt:

$array = array("a", "b", "c", "b", "d", "a");
$newArray = array();
foreach($array as $value) {
    if (!in_array($value, $newArray)) {
        $newArray[] = $value;
    }
}
print_r($newArray);
Führen Sie den obigen Code aus und Sie erhalten die folgenden Ergebnisse:

Array
(
    [0] => a
    [1] => b
    [2] => c
    [4] => d
)
Methode 3: Verwenden Sie die array_flip()-Funktion #🎜🎜 #

array_flip()-Funktion kann die Schlüssel und Werte im Array austauschen. Wenn das ursprüngliche Array doppelte Werte enthält, wird nach dem Austausch nur einer dieser doppelten Werte verwendet bleiben, wodurch der Zweck der Entfernung doppelter Werte erreicht wird.

Der Beispielcode lautet wie folgt:

$array = array("a", "b", "c", "b", "d", "a");
$newArray = array_flip($array);
$newArray = array_flip($newArray);
print_r($newArray);

Führen Sie den obigen Code aus. Sie erhalten die folgenden Ergebnisse:

Array
(
    [a] => 
    [b] => 
    [c] => 
    [d] => 
)

Im obigen Code Verwenden Sie zuerst die Funktion array_flip(). Tauschen Sie die Schlüssel und Werte im Array aus, um ein neues Array $newArray zu erhalten, aber die Werte dieses neuen Arrays sind alle leer. Verwenden Sie dann erneut die Funktion array_flip(), um die Schlüssel und Werte des neuen Arrays auszutauschen. Das Endergebnis ist das deduplizierte Array.

Zusammenfassung

Die oben genannten drei Methoden können den Zweck erreichen, doppelte Werte im Array zu löschen, ihre Implementierungsprinzipien sind jedoch unterschiedlich. Sie müssen die geeignete Methode entsprechend Ihrer tatsächlichen Situation auswählen. Wenn Sie außerdem doppelte Werte beibehalten müssen und das Vorkommen jedes doppelten Werts zählen möchten, können Sie die von PHP bereitgestellte Funktion array_count_values() verwenden, die ein neues Array zurückgeben kann, das jedes Element im ursprünglichen Array enthält . Die Anzahl der Vorkommen.

Das obige ist der detaillierte Inhalt vonSo entfernen Sie doppelte Werte in 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