Das Löschen von Array-Elementen in php ist sehr einfach, aber manchmal erfordert das Löschen des Arrays eine gewisse Sortierung des Index . Wir werden hier die entsprechende Funktion verwenden Wir werden den Unterschied zwischen der Verwendung von unset und array_splice zum Löschen von Elementen in einem Array vorstellen.
Wenn Sie ein Element in einem Array löschen möchten, können Sie unset direkt verwenden, aber den Index des Das Array wird nicht neu angeordnet:
<?php $arr = array('a','b','c','d'); unset($arr[1]); print_r($arr); ?>
Das Ergebnis ist:
Array ( [0] => a [2] => c [3] => d )
Wie können wir also sicherstellen, dass die fehlenden Elemente gefüllt und das Array neu indiziert wird? Die Antwort lautet array_splice():
<?php $arr = array('a','b','c','d'); array_splice($arr,1,1); print_r($arr); ?>
Das Ergebnis ist:
Array ( [0] => a [1] => c [2] => d )
Bestimmte Elemente im Array löschen
<?php $arr2 = array(1,3, 5,7,8); foreach ($arr2 as $key=>$value) { if ($value === 3) unset($arr2[$key]); } var_dump($arr2); ?>
Ergänzendes Löschen des leeren Arrays
Beispiel:
<?php $array = ('a' => "abc", 'b' => "bcd",'c' =>"cde",'d' =>"def",'e'=>""); array_filter($array); echo "<pre class="brush:php;toolbar:false">"; print_r($array); ?>
Ergebnis:
Array ( [a] => abc [b] => bcd [c] => cde [d] => def )
Zusammenfassung
Wenn die Funktion array_splice() gelöscht wird, der Indexwert des Arrays wird sich auch ändern.
Wenn die Funktion unset() gelöscht wird, ändert sich der Indexwert des Arrays nicht.
Das obige ist der detaillierte Inhalt vonSo verwenden Sie unset, array_splice, um Elemente in einem Array zu löschen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!