Heim >Backend-Entwicklung >PHP-Problem >So löschen Sie ein Wertelement in einem eindimensionalen Array in PHP
So löschen Sie ein Wertelement in einem eindimensionalen Array in PHP: 1. Verwenden Sie die for-Schleifenanweisung und die Funktion [array_merge()], um den Wert zu entfernen. Der Code lautet [$arr = array_merge($arr)] ; 2. Verwenden Sie die Funktion [array_splice] 】Sequenzwert automatisch zurücksetzen.
So löschen Sie ein Wertelement in einem eindimensionalen Array in PHP:
1. Schreiben Sie Ihre eigene for-Schleife
Entfernen Sie den Wert von $tmp
aus das Array $tmp
这个元素的值
<?php $tmp = '324'; $arr = array( '0' => '321', '1' => '322', '2' => '323', '3' => '324', '4' => '325', '5' => '326', );
代码
foreach( $arr as $k=>$v) { if($tmp == $v) unset($arr[$k]); } print_r($arr); ?>
此时
Array ( [0] => 321 [1] => 322 [2] => 323 [4] => 325 [5] => 326 )
要重置索引,加上一句
foreach( $arr as $k=>$v) { if($tmp == $v) unset($arr[$k]); } $arr = array_values($arr); print_r($arr); ?>
此时结果
Array ( [0] => 321 [1] => 322 [2] => 323 [3] => 325 [4] => 326 )
array_merge()
也可以实现同样的效果
foreach( $arr as $k=>$v) { if($tmp == $v) unset($arr[$k]); } $arr = array_merge($arr); print_r($arr); ?>
Array ( [0] => 321 [1] => 322 [2] => 323 [3] => 325 [4] => 326 )
2.优先使用php自带函数,因为那是用C实现的,比自己写效率高。
使用array_search和array_splice,这里array_splice
$key=array_search($tmp ,$arr); array_splice($arr,$key,1); var_dump($arr);Code
Array ( [0] => 321 [1] => 322 [2] => 323 [3] => 325 [4] => 326 )Zu diesem Zeitpunkt
$arr = array_merge(array_diff($arr, array($tmp))); var_dump($arr);Um den Index zurückzusetzen, fügen Sie einen Satz hinzu
Array ( [0] => 321 [1] => 322 [2] => 323 [3] => 325 [4] => 326 )Das Ergebnis zu diesem Zeitpunkt
$arr = array_merge(array_diff($arr, $tmp)); var_dump($arr);
array_merge()
kann auch den gleichen Effekt erzielen rrreeerrreee
2 .Verwenden Sie lieber die Funktionen, die mit PHP geliefert werden, da diese in C implementiert sind und effizienter sind, als sie selbst zu schreiben.rrreee🎜Best Practice🎜rrreee🎜Ergebnis🎜rrreee🎜Hier kann auch ein Vergleich durchgeführt werden, wenn es sich bei den Array-Elementen um komplexe Datenstrukturen handelt. Natürlich sind die Daten selbst immer noch eindimensional. 🎜🎜Im obigen Beispiel ist $tmp ein Wert. Wenn $tmp ein Array oder eine andere komplexe Datenstruktur ist, löschen Sie alle in $tmp enthaltenen Elemente aus $array. Die obige Methode ist ebenfalls gültig.🎜rrreee🎜🎜Verwandte Lernempfehlungen: 🎜 PHP-Programmierung 🎜 (Video) 🎜🎜🎜Verwenden Sie array_search und array_splice, wobei
Ergebnis zu diesem Zeitpunktarray_splice
den Sequenzwert automatisch zurücksetzt.
rrreee
Das obige ist der detaillierte Inhalt vonSo löschen Sie ein Wertelement in einem eindimensionalen Array in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!