Heim > Artikel > Backend-Entwicklung > So entfernen Sie den angegebenen Schlüsselwert aus dem PHP-Array
Array ist in PHP ein sehr verbreiteter Datentyp, der normalerweise zum Speichern einer Reihe zusammengehöriger Daten verwendet wird. Bei der Verarbeitung von Arrays müssen wir manchmal bestimmte Schlüsselwerte im Array entfernen, was in der tatsächlichen Entwicklung sehr häufig vorkommt. In diesem Artikel werden mehrere gängige Methoden vorgestellt, mit denen Sie bestimmte Schlüsselwerte einfach aus PHP-Arrays entfernen können.
Methode 1: Verwenden Sie die Funktion unset()
Die Funktion unset() kann bestimmte Variablen löschen, einschließlich Schlüsselwerten im Array. Wir können das Array durchlaufen und die Funktion unset() verwenden, um den angegebenen Schlüsselwert zu löschen, wie im folgenden Beispiel:
// 定义一个数组 $arr = array('apple', 'banana', 'cherry', 'dates'); // 删除指定的键值 unset($arr[1]); // 删除数组中的第二个元素 banana // 输出数组 print_r($arr);
Das laufende Ergebnis ist:
Array ( [0] => apple [2] => cherry [3] => dates )
Methode 2: Verwenden Sie die Funktion array_splice()
array_splice( )-Funktion ist eine von PHP bereitgestellte Funktion. Eine Array-Operationsfunktion, die Elemente in ein Array einfügen oder löschen und das gelöschte Element zurückgeben kann. Wir können diese Funktion verwenden, um den angegebenen Schlüsselwert zu löschen, wie im folgenden Beispiel:
// 定义一个数组 $arr = array('apple', 'banana', 'cherry', 'dates'); // 删除指定的键值 array_splice($arr, 1, 1); // 删除数组中的第二个元素 banana // 输出数组 print_r($arr);
Das laufende Ergebnis ist:
Array ( [0] => apple [1] => cherry [2] => dates )
Bei Verwendung der Funktion array_splice() ist der erste Parameter das Array und der zweite Parameter das Startposition, die gelöscht werden soll, der dritte Parameter gibt die Anzahl der zu löschenden Elemente an.
Methode 3: Verwenden Sie die Funktion array_diff()
Die Funktion array_diff() kann verwendet werden, um den Differenzsatz von Arrays zu berechnen, d. h. ein Array zurückzugeben, das Elemente enthält, die in Array A, aber nicht in Array B vorhanden sind. Wenn wir einen oder mehrere angegebene Schlüsselwerte entfernen möchten, können wir diese Schlüsselwerte in ein Array kapseln und als zweiten Parameter an die Funktion array_diff() übergeben. Der Code lautet wie folgt:
// 定义一个数组 $arr = array('apple', 'banana', 'cherry', 'dates'); // 删除指定的键值 $rm_key = array(1); // 要删除的键值 banana $new_arr = array_diff($arr, array_intersect_key($arr, array_flip($rm_key))); // 输出数组 print_r($new_arr);
Die Ergebnisse werden wie folgt ausgeführt:
Array ( [0] => apple [2] => cherry [3] => dates )
Im Code wird die Funktion array_intersect_key() verwendet, um das entsprechende Array des zu löschenden Schlüssels abzurufen, und die Funktion array_flip() wird verwendet, um den Schlüsselwert und die Indexposition des Arrays auszutauschen, um den entsprechenden Schlüssel zu erhalten . Schließlich können wir das Ergebnis der obigen Operation als Parameter an die Funktion array_diff() übergeben, um den angegebenen Schlüsselwert zu entfernen.
Methode 4: Verwenden Sie die Funktion array_filter()
Die Funktion array_filter() kann zum Filtern von Array-Elementen und zum Zurückgeben von Elementen verwendet werden, die bestimmte Bedingungen erfüllen. Wir können die zu löschenden Schlüsselwerte als Filterbedingungen festlegen und die Funktion array_filter() verwenden, um die angegebenen Schlüsselwerte zu entfernen. Der Code lautet wie folgt:
// 定义一个数组 $arr = array('apple', 'banana', 'cherry', 'dates'); // 删除指定的键值 $rm_key = array(1); // 要删除的键值 banana $new_arr = array_filter($arr, function($k) use($rm_key) { return !in_array($k, $rm_key); }, ARRAY_FILTER_USE_KEY); // 输出数组 print_r($new_arr);
Das laufende Ergebnis lautet:
Array ( [0] => apple [2] => cherry [3] => dates )
Im Code verwenden wir eine anonyme Funktion als Rückruffunktion der Funktion array_filter(), um die zu löschenden Schlüsselwerte zu filtern. Unter anderem wird das Schlüsselwort use zum Einführen externer Variablen verwendet, um sicherzustellen, dass innerhalb der Schleife auf die Variable $rm_key zugegriffen werden kann. ARRAY_FILTER_USE_KEY bedeutet, dass wir die Schlüssel des Arrays filtern.
Zusammenfassend haben wir vier gängige Methoden zum Entfernen bestimmter Schlüsselwerte in PHP-Arrays eingeführt: die Funktion unset(), die Funktion array_splice(), die Funktion array_diff() und die Funktion array_filter(). Ich hoffe, dieser Artikel kann Ihnen dabei helfen, PHP-Array-bezogene Vorgänge besser zu handhaben.
Das obige ist der detaillierte Inhalt vonSo entfernen Sie den angegebenen Schlüsselwert aus dem PHP-Array. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!