Heim  >  Artikel  >  Backend-Entwicklung  >  Zusammenfassung der Methoden zum Löschen eines Elements aus einem Array und zum Löschen mehrerer Elemente aus einem Array in PHP (mit Code)

Zusammenfassung der Methoden zum Löschen eines Elements aus einem Array und zum Löschen mehrerer Elemente aus einem Array in PHP (mit Code)

不言
不言Original
2018-08-08 16:10:538288Durchsuche

Es gibt viele Möglichkeiten, Elemente in einem Array in PHP zu löschen. In diesem Artikel werden verschiedene Methoden zum Löschen eines Elements eines Arrays und mehrerer Elemente aus einem Array in PHP zusammengefasst. Kommen wir also ohne weitere Umschweife direkt zum Text.

Ein Element im Array löschen

Wenn Sie ein Element im Array löschen möchten, können Sie die Methode unset() oder array_splice() verwenden.

Wenn Sie den Wert des Array-Elements, aber nicht den Schlüssel kennen, können Sie array_search() verwenden, um den Schlüssel abzurufen.

unset()-Methode

Beachten Sie, dass bei Verwendung der unset()-Methode andere Schlüssel nicht geändert werden, wenn Sie andere Schlüssel (Schlüssel) ändern möchten. Um die Reihenfolge neu zu ordnen, können Sie array_values() verwenden.

<?php
$array = array(0 => "a", 1 => "b", 2 => "c");
unset($array[1]);
           //↑ 你要删除的数组元素值的键
print_r($array);
?>

Ausgabeergebnis:

Array (
    [0] => a
    [2] => c
)

array_splice()-Methode

Wenn Sie die array_splice()-Methode verwenden, werden die Schlüssel des Arrays automatisch erneuert -indiziert, funktioniert aber nicht für assoziative Arrays. Sie müssen array_values() verwenden, um die Schlüssel in numerische Schlüssel umzuwandeln.

<?php
$array = array(0 => "a", 1 => "b", 2 => "c");
array_splice($array, 1, 1);
                   //↑ Offset which you want to delete
print_r($array);
?>

Ausgabeergebnis:

Array
(
    [0] => a
    [1] => c
)

array_splice() hat die gleiche Wirkung wie die Funktion unset() beim Freigeben der angegebenen Elemente des Arrays.

Mehrere Elemente aus einem Array löschen

Wenn Sie mehrere Elemente aus einem Array löschen möchten, können Sie die Funktion unset() oder array_splice() nicht verwenden Sie müssen die Methode array_diff() oder array_diff_key() verwenden. Um diese Methode verwenden zu können, müssen Sie den zu löschenden Schlüssel oder Wert kennen.

array_diff()-Methode

Wenn Sie das Array-Element kennen, das Sie löschen möchten, können Sie array_diff() verwenden.

<?php
$array = array(0 => "a", 1 => "b", 2 => "c");
$array = array_diff($array, ["a", "c"]);
                          //└────────┘→你要删除的元素
print_r($array );
?>

Das Ausgabeergebnis ist:

Array
(
    [1] => b
)

array_diff_key()-Methode

Wenn Sie den Schlüssel des zu löschenden Array-Elements kennen, können Sie dies tun Verwenden Sie array_diff_key(). Sie müssen den zu löschenden Schlüssel an der Schlüsselwertposition des zweiten Parameters der Funktion eingeben. Der Wert ist nicht erforderlich und kann optional sein.

<?php
$array = array(0 => "a", 1 => "b", 2 => "c");
$array = array_diff_key($array, [0 => "xy", "2" => "xy"]);
                               //↑           ↑ 你要删除的数组键
print_r($array);
?>

Das Ausgabeergebnis ist:

Array (
    [1] => b
)

Empfohlene verwandte Artikel:

PHP löscht Array-Elemente und löscht doppelte Array-Funktionen

Neuindizierung gelöschter Elemente im PHP-Array, PHP-Array-Elementindex

PHP löscht dieselben Elemente im Array, so dass nur ein gleiches Element übrig bleibt. PHP-Array

Das obige ist der detaillierte Inhalt vonZusammenfassung der Methoden zum Löschen eines Elements aus einem Array und zum Löschen mehrerer Elemente aus einem Array in PHP (mit Code). 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