Heim > Backend-Entwicklung > PHP-Problem > Lassen Sie uns darüber sprechen, wie Sie doppelte Elemente in PHP-Arrays löschen

Lassen Sie uns darüber sprechen, wie Sie doppelte Elemente in PHP-Arrays löschen

PHPz
Freigeben: 2023-04-12 14:15:52
Original
599 Leute haben es durchsucht

PHP ist eine serverseitige Programmiersprache, die häufig für die Webentwicklung, dynamische Webseitenprogrammierung usw. verwendet wird. Um PHP-Programmierern die Datenverarbeitung zu erleichtern, stellt PHP Array als Datentyp bereit. Es handelt sich um eine geordnete Sammlung von Schlüssel-Wert-Paaren und ist auch eine der am häufigsten verwendeten Datenstrukturen in PHP. In der tatsächlichen Entwicklung stoßen Arrays häufig auf doppelte Elemente. Um dieses Problem zu lösen, müssen wir aus der Perspektive der Array-Deduplizierung beginnen. In diesem Artikel erfahren Sie, wie Sie doppelte Elemente in PHP-Arrays löschen.

1. Verwenden Sie die Funktion array_unique(), um Duplikate zu entfernen.

PHP bietet eine integrierte Funktion array_unique(), die verwendet wird, um doppelte Elemente aus dem Array zu entfernen und ein neues Array zurückzugeben, das keine doppelten Elemente enthält. Die Syntax dieser Funktion lautet wie folgt:

array array_unique(array $array[, int $sort_flags = SORT_STRING])
Nach dem Login kopieren

Darunter ist $array das Array, das bearbeitet werden muss, und $sort_flags ist ein optionaler Parameter, der die Sortiermethode beim Deduplizieren angibt. Wenn dieser Parameter nicht übergeben wird, wird standardmäßig die String-Sortiermethode verwendet. Wenn Sie nach numerischer Größe sortieren möchten, können Sie die Konstante SORT_NUMERIC übergeben. Das Folgende ist der Beispielcode:

$old_array = [1, 3, 5, 3, 1, 6, 5];
$new_array = array_unique($old_array);
var_dump($new_array);
Nach dem Login kopieren

Das Ausgabeergebnis ist:

array(4) {
  [0]=>
  int(1)
  [1]=>
  int(3)
  [2]=>
  int(5)
  [5]=>
  int(6)
}
Nach dem Login kopieren

Sie können sehen, dass nach der Deduplizierungsverarbeitung doppelte Elemente entfernt werden und unterschiedliche Elemente zurückbleiben. Dabei ist zu beachten, dass die Schlüsselnamen des neuen Arrays nicht fortlaufend sind, da Ganzzahlen und Strings gemäß der Syntax von PHP zwei unterschiedliche Datentypen sind.

2. Verwenden Sie Schleifen, um Duplikate zu entfernen.

Zusätzlich zur integrierten Funktion array_unique() können wir auch Schleifen verwenden, um die Funktion zum Entfernen von Duplikaten zu erreichen. Die Hauptidee besteht darin, jedes Element des Arrays zu durchlaufen. Wenn das Element bereits im neuen Array vorhanden ist, fügen Sie es andernfalls dem neuen Array hinzu. Das Folgende ist der Beispielcode:

$old_array = [1, 3, 5, 3, 1, 6, 5];
$new_array = [];

foreach ($old_array as $value) {
    if (!in_array($value, $new_array)) {
        $new_array[] = $value;
    }
}

var_dump($new_array);
Nach dem Login kopieren

Das Ausgabeergebnis ist:

array(4) {
  [0]=>
  int(1)
  [1]=>
  int(3)
  [2]=>
  int(5)
  [3]=>
  int(6)
}
Nach dem Login kopieren
Nach dem Login kopieren

Es ist ersichtlich, dass die Elemente im neuen Array nach der Schleifenverarbeitung mit den Ausgabeergebnissen der integrierten Funktion identisch sind entfernt und verschiedene Elemente bleiben erhalten. Es ist zu beachten, dass die Funktion in_array() innerhalb der Schleife verwendet wird, um festzustellen, ob das Element bereits im Array vorhanden ist. Der Rückgabewert dieser Funktion ist ein boolescher Wert.

3. Verwenden Sie die Funktion array_flip(), um Arrays zu deduplizieren.

Zusätzlich zu array_unique() und Schleifen können Sie auch die Funktion array_flip() verwenden, um Arrays zu deduplizieren. Diese Funktion vertauscht die Positionen der Schlüssel und Werte im Array und gibt ein neues Array zurück. Da die Schlüsselnamen von Arrays in PHP eindeutig sein müssen, können Sie mit dieser Funktion doppelte Elemente aus dem Array entfernen. Das Folgende ist der Beispielcode:

$old_array = [1, 3, 5, 3, 1, 6, 5];
$new_array = array_flip($old_array);

var_dump(array_keys($new_array));
Nach dem Login kopieren

Das Ausgabeergebnis ist:

array(4) {
  [0]=>
  int(1)
  [1]=>
  int(3)
  [2]=>
  int(5)
  [3]=>
  int(6)
}
Nach dem Login kopieren
Nach dem Login kopieren

Wie Sie sehen können, wird nach der Verwendung der Funktion array_flip() zum Entfernen von Duplikaten ein neues Array zurückgegeben, das nur unterschiedliche Elemente enthält. Es ist jedoch zu beachten, dass die Werte im ursprünglichen Array als Schlüsselnamen des neuen Arrays verwendet werden und dem Wert des neuen Arrays automatisch der Wert 1 zugewiesen wird.

Fazit

In diesem Artikel werden drei Methoden zum Löschen doppelter Elemente in PHP-Arrays vorgestellt: die integrierte Funktion array_unique(), die Schleife und die Funktion array_flip(). Unter diesen ist die integrierte Funktion array_unique() die einfachste Möglichkeit, während die Funktionen loop und array_flip() flexibler sind und sich für die Handhabung speziellerer oder komplexerer Situationen eignen. Unabhängig davon, welche Methode verwendet wird, ist der entscheidende Punkt, dass die Bedeutung der Array-Deduplizierung nicht ignoriert werden kann. Um sicherzustellen, dass keine doppelten Elemente vorhanden sind, können Sie Arrays besser zum Ausführen verschiedener Vorgänge verwenden.

Das obige ist der detaillierte Inhalt vonLassen Sie uns darüber sprechen, wie Sie doppelte Elemente in PHP-Arrays löschen. 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