Heim  >  Artikel  >  Backend-Entwicklung  >  So löschen Sie identische Werte in einem Array in PHP

So löschen Sie identische Werte in einem Array in PHP

PHPz
PHPzOriginal
2023-04-23 10:21:53454Durchsuche

PHP ist eine sehr beliebte Programmiersprache in der Webentwicklung und die Verwendung von Arrays in der Webentwicklung ist weit verbreitet. Aber wenn es darum geht, identische Werte in einem Array zu löschen, kommt es manchmal zu Situationen. In diesem Artikel stellen wir vor, wie man mit der Programmiersprache PHP identische Werte in einem Array löscht.

Sehen Sie sich die Grundlagen von PHP-Arrays an. In PHP ist ein Array ein spezieller Variablentyp, der zum Speichern einer Reihe von Werten (Elementen) verwendet wird. Jedes Element hat einen Schlüssel und einen Wert. Schlüssel können Ganzzahlen oder Zeichenfolgen sein, Werte können jedoch beliebige Datentypen wie Zahlen, Zeichenfolgen, Objekte und mehr sein.

PHP bietet viele nützliche Array-Funktionen zum Verarbeiten und Betreiben von Arrays. Funktionen wie array_unique() können doppelte Elemente in einem Array entfernen, aber manchmal reicht es nicht aus, nur doppelte Elemente zu entfernen. Wir müssen doppelte Werte aus dem Array entfernen (auch wenn sie mehrmals im Array vorkommen). Mal sehen, wie das geht.

Zuerst haben wir ein Array mit wiederholten Elementen. Unten finden Sie ein Beispielarray.

$numbers = array(1, 2, 3, 4, 3, 5, 6, 2, 7, 8, 6, 1);

Unser Ziel ist Entfernen identische Werte aus dem Array, daher müssen wir diese Werte zuerst finden. Dazu können wir die Funktion array_count_values() in PHP verwenden. Diese Funktion zählt das Vorkommen jedes Werts im Array und gibt ein neues Array zurück, das die Werte und deren Vorkommen enthält.

Das Folgende ist ein Beispielcode, der die Funktion array_count_values() verwendet, um die Anzahl der Vorkommen jedes Werts in einem Array zu zählen.

$counted = array_count_values($numbers);
print_r($counted);

Das Ausgabeergebnis ist wie folgt:

Array#🎜 🎜#(

[1] => 2
[2] => 2
[3] => 2
[4] => 1
[5] => 1
[6] => 2
[7] => 1
[8] => 1
)

Wie Sie der Ausgabe entnehmen können, wird jeder Wert im Array und die Anzahl seiner Vorkommen berechnet. Als nächstes müssen wir die Werte, die häufiger als 1 vorkommen, aus dem ursprünglichen Array entfernen.

Dazu müssen wir die foreach-Schleife in PHP verwenden. Wir durchlaufen das neu berechnete Array und löschen die gleichen Werte darin. Unten finden Sie Beispielcode.

foreach($counted as $key => $value){

if($value > 1){
    for($i=0;$i<$value-1;$i++){
        $keyToDelete = array_search($key, $numbers);
        unset($numbers[$keyToDelete]);
    }
}

}

Sehen wir uns an, wie der obige Code funktioniert. Wir verwenden eine foreach-Schleife, um das berechnete neue Array zu durchlaufen. Wenn ein Wert zweimal oder öfter vorkommt, verwenden wir eine for-Schleife, um alle anderen doppelten Werte im Array zu entfernen. Wir verwenden die Funktion array_search(), um die zu löschenden Schlüssel im Array zu finden und verwenden die Funktion unset(), um sie aus dem Array zu löschen.

Jetzt drucken wir das neue Array aus, um sicherzustellen, dass alle identischen Werte entfernt wurden.

print_r($numbers);

Das Ausgabeergebnis ist wie folgt:

Array

(

[0] => 1
[1] => 2
[2] => 3
[3] => 4
[5] => 5
[6] => 6
[8] => 7
[9] => 8
#🎜 🎜#)

Wir können sehen, dass alle gleichen Werte im ursprünglichen Array entfernt wurden.

In der Webentwicklung, insbesondere beim Umgang mit Formularen und Datenbanken, ist das Löschen desselben Werts in einem Array ein sehr notwendiger und nützlicher Vorgang. Mit der Programmiersprache PHP können wir dies leicht erreichen.

Das obige ist der detaillierte Inhalt vonSo löschen Sie identische 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