PHP ist eine beliebte Programmiersprache und ihre leistungsstarken Array-Verarbeitungsfunktionen sind einer der wichtigen Gründe, warum sie hoch gelobt wird. Bei der PHP-Programmierung müssen wir häufig Array-Operationen ausführen. Eine der häufigsten Operationen besteht darin, einen bestimmten Wert im Array zu löschen. In diesem Artikel wird erläutert, wie Sie identische Werte in einem Array in PHP löschen.
In PHP können wir ein bestimmtes Schlüssel-Wert-Paar im Array über die Funktion unset() löschen. Wenn wir jedoch mehrere Elemente mit demselben Wert im Array löschen müssen, wird diese Methode etwas umständlich. Um doppelte Elemente in einem Array bequemer zu löschen, bietet PHP eine integrierte Funktion array_unique(). Die Funktion
array_unique() soll ein neues Array zurückgeben, das nur nicht doppelte Werte im ursprünglichen Array enthält. Diese Funktion kann über den folgenden Code verwendet werden:
<?php $arr = array("PHP", "Java", "Python", "PHP", "C++", "Ruby", "C#"); $new_arr = array_unique($arr); print_r($new_arr); ?>
Die Ausgabe des obigen Codes lautet:
Array ( [0] => PHP [1] => Java [2] => Python [4] => C++ [5] => Ruby [6] => C# )
Wie Sie sehen können, haben wir die doppelten Elemente im ursprünglichen Array erfolgreich gelöscht.
Der obige Code zeigt jedoch nur, wie man doppelte Werte über die Funktion array_unique() entfernt. Was ist, wenn wir doppelte Elemente direkt im ursprünglichen Array löschen müssen? Zu diesem Zeitpunkt können wir die Funktion array_unique() und die Funktion array_diff() kombinieren, um doppelte Elemente im ursprünglichen Array zu löschen. Die Funktion der Funktion
array_diff() besteht darin, die Differenzmenge zweier Arrays zurückzugeben, d. h. den Wert zurückzugeben, den Array 1 hat, Array 2 jedoch nicht. Wir können diese Differenz nutzen, um die doppelten Elemente im ursprünglichen Array zu berechnen und sie aus dem ursprünglichen Array zu löschen. Die spezifische Idee kann durch den folgenden Code realisiert werden:
<?php $arr = array("PHP", "Java", "Python", "PHP", "C++", "Ruby", "C#"); $unique_arr = array_unique($arr); //去重 $duplicate_arr = array_diff_assoc($arr, $unique_arr); //计算重复元素 foreach($duplicate_arr as $key => $val){ //遍历重复元素 while(($index = array_search($val, $arr)) !== false){ //在原数组中依次查找元素位置 unset($arr[$index]); //删除元素 } } print_r($arr); ?>
Das Ausführungsergebnis des obigen Codes ist:
Array ( [1] => Java [2] => Python [4] => C++ [5] => Ruby [6] => C# )
Wie Sie sehen können, haben wir die doppelten Elemente im ursprünglichen Array erfolgreich gelöscht und ein neues Array erhalten.
Zusammenfassend lässt sich sagen, dass die Methode zum Löschen derselben Werte im Array durch die Kombination der Funktionen array_unique() und array_diff() erreicht werden kann. Unter diesen wird die Funktion array_unique() zum Entfernen doppelter Werte und die Funktion array_diff() zum Berechnen doppelter Elemente verwendet. Mit der oben genannten Methode können wir Array-Operationen in der PHP-Programmierung bequemer durchführen.
Das obige ist der detaillierte Inhalt vonSo löschen Sie identische Werte im Array in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!