Heim > Backend-Entwicklung > PHP-Problem > So entfernen Sie doppelte Werte mit PHP aus einem Array

So entfernen Sie doppelte Werte mit PHP aus einem Array

PHPz
Freigeben: 2023-04-23 15:58:05
Original
531 Leute haben es durchsucht

In PHP ist Array eine der am häufigsten verwendeten Datenstrukturen. Es kann mehrere Elemente speichern, ist flexibel und praktisch und wird häufig in der Entwicklung verwendet. In der tatsächlichen Entwicklung müssen wir jedoch häufig einige Vorgänge an Arrays ausführen, z. B. das Löschen doppelter Werte. In diesem Artikel wird erläutert, wie Sie mit PHP doppelte Werte aus einem Array entfernen.

1. Prinzip

Methode 1: Verwenden Sie die Funktion array_unique

PHP stellt eine Funktion array_unique bereit, die doppelte Werte aus dem Array entfernen kann. Die Syntax lautet wie folgt:

array array_unique ( array $array [, int $sort_flags = SORT_STRING ] )

Diese Funktion akzeptiert ein Array als Parameter und gibt ein neues Array zurück , new Die Werte im Array schließen doppelte Werte aus dem ursprünglichen Array aus. Der zweite Parameter $sort_flags wird verwendet, um anzugeben, wie das Ausgabearray sortiert werden soll. Standardmäßig behält das Ausgabearray die Schlüsselnamen des ursprünglichen Arrays bei.

Beispielcode:

$arr = array(1,2,2,3,4,4,5);

$new_arr = array_unique($arr);

print_r($new_arr);  // 输出:Array ( [0] => 1 [1] => 2 [3] => 3 [4] => 4 [6] => 5 )
Nach dem Login kopieren

Methode 2: Schleifendurchlauf verwenden

Vergleichen Sie jedes Element im Array mit den folgenden Elementen, indem Sie das Array durchlaufen Wenn die Werte identisch sind, löschen Sie die folgenden Elemente, um die Deduplizierungsfunktion zu erreichen.

Beispielcode:

$arr = array(1,2,2,3,4,4,5);

for($i=0;$i<count($arr);$i++){
    for($j=$i+1;$j<count($arr);$j++){
        if($arr[$i]==$arr[$j]){
            array_splice($arr,$j,1);
            $j--;
        }
    }
}

print_r($arr);  // 输出:Array ( [0] => 1 [1] => 2 [3] => 3 [4] => 4 [6] => 5 )
Nach dem Login kopieren
Nach dem Login kopieren

2. Verwenden Sie Methode eins, um doppelte Werte im Array zu löschen.

Wir verwenden die erwähnte Funktion array_unique Um diese Deduplizierungsfunktion zu erreichen, lautet der Beispielcode wie folgt:

$arr = array(1,2,2,3,4,4,5);
$new_arr = array_unique($arr);
print_r($new_arr);  // 输出:Array ( [0] => 1 [1] => 2 [3] => 3 [4] => 4 [6] => 5 )
Nach dem Login kopieren

3 Verwenden Sie Methode 2, um doppelte Werte im Array zu löschen

Wir verwenden die Methode von Beim Durchlaufen des Arrays zum Löschen von Duplikaten im Array-Wert lautet der Beispielcode wie folgt:

$arr = array(1,2,2,3,4,4,5);

for($i=0;$i<count($arr);$i++){
    for($j=$i+1;$j<count($arr);$j++){
        if($arr[$i]==$arr[$j]){
            array_splice($arr,$j,1);
            $j--;
        }
    }
}

print_r($arr);  // 输出:Array ( [0] => 1 [1] => 2 [3] => 3 [4] => 4 [6] => 5 )
Nach dem Login kopieren
Nach dem Login kopieren

4 Leistungsvergleich

Die Zeitkomplexität der beiden Methoden beträgt O( n) bzw. O(n^2), Methode eins Die zeitliche Komplexität ist geringer und die Leistung besser. Daher sollten wir in der tatsächlichen Entwicklung versuchen, Methode eins zu wählen, um die Array-Deduplizierung zu implementieren und die Programmleistung zu verbessern.

5. Zusammenfassung

In diesem Artikel werden zwei Methoden zum Löschen doppelter Werte in Arrays in PHP vorgestellt. Durch Vergleich kann festgestellt werden, dass Methode eins weniger Zeit benötigt Komplexität und bessere Leistung gut. In bestimmten Fällen kann Methode 2 jedoch besser geeignet sein. In der tatsächlichen Entwicklung sollten wir Entscheidungen auf der Grundlage tatsächlicher Bedingungen treffen, um die Effizienz des Programms zu verbessern.

Das obige ist der detaillierte Inhalt vonSo entfernen Sie doppelte Werte mit PHP aus einem 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