Heim > Backend-Entwicklung > PHP-Tutorial > So verwenden Sie unset, array_splice, um Elemente in einem Array zu löschen

So verwenden Sie unset, array_splice, um Elemente in einem Array zu löschen

伊谢尔伦
Freigeben: 2023-03-11 09:30:01
Original
1223 Leute haben es durchsucht

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(&#39;a&#39;,&#39;b&#39;,&#39;c&#39;,&#39;d&#39;);
unset($arr[1]);
print_r($arr);
?>
Nach dem Login kopieren

Das Ergebnis ist:

Array ( [0] => a [2] => c [3] => d )
Nach dem Login kopieren

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(&#39;a&#39;,&#39;b&#39;,&#39;c&#39;,&#39;d&#39;); 
array_splice($arr,1,1); 
print_r($arr); 
?>
Nach dem Login kopieren

Das Ergebnis ist:

Array ( [0] => a [1] => c [2] => d )
Nach dem Login kopieren

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);
?>
Nach dem Login kopieren

Ergänzendes Löschen des leeren Arrays

Beispiel:

<?php
  $array = (&#39;a&#39; => "abc", &#39;b&#39; => "bcd",&#39;c&#39; =>"cde",&#39;d&#39; =>"def",&#39;e&#39;=>"");
  array_filter($array);
  echo "<pre class="brush:php;toolbar:false">";
  print_r($array);
?>
Nach dem Login kopieren

Ergebnis:

Array ( 
     [a] => abc 
     [b] => bcd 
     [c] => cde 
    [d] => def
)
Nach dem Login kopieren

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!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage