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

coldplay.xixi
Freigeben: 2023-03-03 22:06:02
Original
3117 Leute haben es durchsucht

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

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 = &#39;324&#39;;
$arr = array(
&#39;0&#39; => &#39;321&#39;,
&#39;1&#39; => &#39;322&#39;,
&#39;2&#39; => &#39;323&#39;,
&#39;3&#39; => &#39;324&#39;,
&#39;4&#39; => &#39;325&#39;,
&#39;5&#39; => &#39;326&#39;,
);
Nach dem Login kopieren

代码

foreach( $arr as $k=>$v) {
 if($tmp == $v) unset($arr[$k]);
}
print_r($arr);
?>
Nach dem Login kopieren

此时

Array
(
 [0] => 321
 [1] => 322
 [2] => 323
 [4] => 325
 [5] => 326
)
Nach dem Login kopieren

要重置索引,加上一句

foreach( $arr as $k=>$v) {
 if($tmp == $v) unset($arr[$k]);
}
$arr = array_values($arr);
print_r($arr);
?>
Nach dem Login kopieren

此时结果

Array
(
 [0] => 321
 [1] => 322
 [2] => 323
 [3] => 325
 [4] => 326
)
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

array_merge()也可以实现同样的效果

foreach( $arr as $k=>$v) {
 if($tmp == $v) unset($arr[$k]);
}
$arr = array_merge($arr);
print_r($arr);
?>
Nach dem Login kopieren
Array
(
 [0] => 321
 [1] => 322
 [2] => 323
 [3] => 325
 [4] => 326
)
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

2.优先使用php自带函数,因为那是用C实现的,比自己写效率高。

使用array_search和array_splice,这里array_splice

$key=array_search($tmp ,$arr);
array_splice($arr,$key,1);
var_dump($arr);
Nach dem Login kopieren

Code

Array
(
 [0] => 321
 [1] => 322
 [2] => 323
 [3] => 325
 [4] => 326
)
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Zu diesem Zeitpunkt

$arr = array_merge(array_diff($arr, array($tmp)));
var_dump($arr);
Nach dem Login kopieren

Um den Index zurückzusetzen, fügen Sie einen Satz hinzu

Array
(
 [0] => 321
 [1] => 322
 [2] => 323
 [3] => 325
 [4] => 326
)
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Das Ergebnis zu diesem Zeitpunkt

$arr = array_merge(array_diff($arr, $tmp));
var_dump($arr);
Nach dem Login kopieren
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.

Verwenden Sie array_search und array_splice, wobei array_splice den Sequenzwert automatisch zurücksetzt.
rrreee

Ergebnis zu diesem Zeitpunkt
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) 🎜🎜🎜

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!

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
Aktuelle Ausgaben
PHP-Datenerfassung?
Aus 1970-01-01 08:00:00
0
0
0
PHP-Erweiterung intl
Aus 1970-01-01 08:00:00
0
0
0
Wie man PHP gut lernt
Aus 1970-01-01 08:00:00
0
0
0
Mehrere PHP-Versionen
Aus 1970-01-01 08:00:00
0
0
0
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage