Heim  >  Artikel  >  Backend-Entwicklung  >  So löschen Sie mithilfe von PHP-Techniken ein bestimmtes Wertelement in einem eindimensionalen Array

So löschen Sie mithilfe von PHP-Techniken ein bestimmtes Wertelement in einem eindimensionalen Array

jacklove
jackloveOriginal
2018-06-28 17:37:582037Durchsuche

Der folgende Editor wird mit Ihnen einen Artikel darüber teilen, wie Sie ein bestimmtes Wertelement in einem eindimensionalen Array in PHP löschen. Er hat einen guten Referenzwert und ich hoffe, dass er für alle hilfreich ist. Folgen wir dem Editor, um einen Blick darauf zu werfen

1. Schreiben Sie Ihre eigene for-Schleife

Entfernen Sie den Wert des $tmp-Elements aus dem Array

<?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;,
);

Code

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

An diesem Punkt Zeit

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

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

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

Das Ergebnis zu diesem Zeitpunkt

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

array_merge() kann auch den gleichen Effekt erzielen

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

Das Ergebnis zu diesem Zeitpunkt ist

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

2 .Verwenden Sie lieber PHP-eigene Funktionen, 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.

$key=array_search($tmp ,$arr);
array_splice($arr,$key,1);
var_dump($arr);

Ergebnis zu diesem Zeitpunkt

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

Best Practices

$arr = array_merge(array_diff($arr, array($tmp)));
var_dump($arr);

Ergebnisse

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

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 auch gültig

$arr = array_merge(array_diff($arr, $tmp));
var_dump($arr);

Die obige PHP-Methode zum Löschen eines bestimmten Wertelements in einem eindimensionalen Array ist der gesamte vom Editor geteilte Inhalt. Ich hoffe, sie kann Ihnen eine Referenz geben Ich hoffe auch, dass Sie bitte die chinesische PHP-Website unterstützen.

Artikel, die Sie interessieren könnten:

PHP-Techniken zur Implementierung der inversen Farbverarbeitung von Bildern

Beispiel für die Installation einer PHP-Erweiterung über die PECL-Methode zur Erläuterung von PHP-Kenntnissen

PHP-Studiennotizen – grundlegende Verwendung von mb_strstr PHP-Kenntnissen

Das obige ist der detaillierte Inhalt vonSo löschen Sie mithilfe von PHP-Techniken ein bestimmtes Wertelement in einem eindimensionalen Array. 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