Heim >Backend-Entwicklung >PHP-Problem >So implementieren Sie die Array-Eliminierung mit denselben Schlüsselwerten in PHP
In der Programmiersprache PHP ist Array ein sehr häufig verwendeter Datentyp. Es kann mehrere Datenelemente speichern und über einen Schlüssel auf jedes Element zugreifen. Während des Entwicklungsprozesses stoßen wir häufig auf Situationen, in denen wir Werte mit demselben Schlüssel in einem Array entfernen müssen. In diesem Artikel wird erläutert, wie dieser Vorgang in PHP implementiert wird.
In PHP ist ein Array eine geordnete Sammlung von Daten, die verschiedene Datentypen wie Ganzzahlen, Gleitkommatypen, Zeichenfolgen und boolesche Typen enthalten kann. Auf die Elemente eines Arrays kann über ihre Schlüsselwerte zugegriffen werden. In PHP können Arrays in verschiedenen Formen deklariert und initialisiert werden, beispielsweise mit der Funktion array()
oder mit dem Operator []
zum Erstellen eines Arrays. array()
函数,或者使用[]
运算符来创建一个数组。
例如,在以下代码中,我们可以创建一个包含5个元素的数组,并初始化每个元素。
$numbers = array(1, 2, 3, 4, 5);
或者,你也可以使用[]
运算符来初始化一个数组:
$numbers = [1, 2, 3, 4, 5];
在这两种情况下,变量$numbers
将是一个包含5个元素的数组,并且可以通过键值来访问每个元素。例如,我们可以使用$numbers[0]
$numbers = array(1, 2, 3, 4, 5, 5, 4); $uniqueNumbers = array_unique($numbers);
[]
verwenden, um ein Array zu initialisieren: $numbers = array(1, 2, 3, 4, 5, 5, 4); $uniqueNumbers = array_filter($numbers, function ($value, $key) use ($numbers) { return array_keys($numbers, $value)[0] === $key; }, ARRAY_FILTER_USE_BOTH);
$numbers
ein Array mit 5 Ein Array von Elementen, auf die jeweils über einen Schlüsselwert zugegriffen werden kann. Beispielsweise können wir $numbers[0]
verwenden, um auf das erste Element zuzugreifen.
Identische Schlüsselwerte aus PHP-Arrays entfernen
Normalerweise müssen wir beim Schreiben von PHP-Programmen verschiedene Daten verarbeiten, z. B. das Abfragen von Daten aus einer Datenbank, das Lesen von Daten aus einer Datei oder das Empfangen von Daten von einer Webformular. In diesen Fällen stoßen wir häufig auf Situationen, in denen wir Werte mit demselben Schlüsselwert in einem PHP-Array entfernen müssen. Glücklicherweise gibt es in PHP viele Möglichkeiten, diesen Vorgang auszuführen. Die drei am häufigsten verwendeten Methoden sind unten aufgeführt: 2.1 Verwenden Sie die Funktion array_unique, um Duplikate zu entfernen. PHP verfügt über eine integrierte Funktion array_unique, die doppelte Werte im Array entfernen kann, zum Beispiel:$numbers = array(1, 2, 3, 4, 5, 5, 4); $tempNumbers = array(); foreach ($numbers as $key => $value) { if (in_array($value, $tempNumbers)) { unset($numbers[$key]); } else { $tempNumbers[] = $value; } }In der Im obigen Beispiel haben wir ein Array $numbers definiert, das mehrere identische Schlüsselwerte enthält, und die Funktion array_unique wird verwendet, um es zu deduplizieren. Das Ergebnis ist, dass Werte mit demselben Schlüsselwert eliminiert werden. Letztendlich wird $uniqueNumbers ein neues Array sein, das verschiedene Schlüsselwerte enthält. 2.2 Verwenden Sie die Funktion array_filter, um Schlüsselwerte zu filtern. Die Funktion array_filter wird zum Filtern von Elementen in einem Array verwendet. Sie akzeptiert ein Array, das Elemente enthält, und gibt ein neues Array zurück, das nur die Elemente enthält, die die angegebenen Bedingungen erfüllen. Im folgenden Code definieren wir beispielsweise ein Array $numbers, das mehrere identische Schlüsselwerte enthält, und verwenden die Funktion array_filter, um doppelte Schlüsselwerte herauszufiltern.
rrreee
Im obigen Code verwenden wir eine anonyme Funktion und übergeben das Array $numbers und den aktuellen Schlüsselwert als Parameter. Im Funktionskörper verwenden wir die Funktion array_keys, um das erste Vorkommen des aktuellen Schlüsselwerts im Array $numbers abzurufen und es mit dem aktuellen Schlüsselwert zu vergleichen. True wird nur zurückgegeben, wenn die beiden Schlüsselwerte gleich sind. Das schließlich zurückgegebene neue Array ist ein Array, das nur Schlüsselwerte ohne Duplikate enthält. 2.3 Verwenden Sie die Foreach-Schleife, um eine Deduplizierung zu erreichen. Wir können die Foreach-Schleife verwenden, um das Array zu durchlaufen, und eine temporäre Variable verwenden, um nicht doppelte Schlüsselwerte zu speichern. Wir prüfen für jedes Element, ob es bereits in der temporären Variable vorkommt. Wenn dies der Fall ist, wird es aus dem ursprünglichen Array entfernt, andernfalls wird es einer temporären Variablen hinzugefügt.Das obige ist der detaillierte Inhalt vonSo implementieren Sie die Array-Eliminierung mit denselben Schlüsselwerten in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!