So löschen Sie Array-Elemente basierend auf dem Schlüssel in PHP

青灯夜游
Freigeben: 2023-03-08 10:08:01
Original
2242 Leute haben es durchsucht

So löschen Sie Array-Elemente basierend auf dem Schlüssel in PHP: Verwenden Sie zuerst die Funktionen array_keys() und array_search(), um die Startposition x des zu löschenden Elements basierend auf dem Schlüssel zu finden , 1);“, um das angegebene Array-Element zu löschen.

So löschen Sie Array-Elemente basierend auf dem Schlüssel in PHP

Die Betriebsumgebung dieses Tutorials: Windows 7-System, PHP-Version 7.1, DELL G3-Computer

Die Elemente im PHP-Array liegen in Form von Schlüssel-Wert-Paaren vor ('key'=>'value '), Manchmal müssen wir ein bestimmtes Element im Array basierend auf seinem Schlüssel löschen.

<?php
function array_remove($arr, $key){
  if(!array_key_exists($key, $arr)){
    return $arr;
  }
  $keys = array_keys($arr);
  $index = array_search($key, $keys);
  if($index !== FALSE){
    array_splice($arr, $index, 1);
  }
  return $arr;
}
$data = array(&#39;name&#39;=>&#39;apple&#39;,&#39;age&#39;=>12,&#39;address&#39;=>&#39;ChinaGuangZhou&#39;);
$result = array_remove($data, &#39;age&#39;);
var_dump($result);
 ?>
Nach dem Login kopieren

Ausgabe:

array (size=2)
  &#39;name&#39; => string &#39;apple&#39; (length=5)
  &#39;address&#39; => string &#39;ChinaGuangZhou&#39; (length=14)
Nach dem Login kopieren

Anweisungen zur Verwendung der Funktion:

1.array_search()

Definition und Verwendung

Die Funktion array_search() ist dieselbe wie in_array() und sucht nach einem Schlüsselwert im Array . Wird der Wert gefunden, wird der Schlüssel des passenden Elements zurückgegeben. Wenn nicht gefunden, wird false zurückgegeben.

Vor PHP 4.2.0 gaben Funktionen bei einem Fehler null statt false zurück.

Wenn der dritte Parameter strict als true angegeben ist, wird der Schlüsselname des entsprechenden Elements nur zurückgegeben, wenn Datentyp und Wert konsistent sind.

Syntax

array_search(value,array,strict)
Nach dem Login kopieren

Parameterbeschreibung
Wert Erforderlich. Gibt den Wert an, nach dem im Array gesucht werden soll.
array Erforderlich. Das zu durchsuchende Array.
streng Optional. Mögliche Werte:
true
false Standard
Wenn der Wert auf true gesetzt ist, wird auch der Typ des angegebenen Werts im Array überprüft

[Lernempfehlung: „PHP Video Tutorial“]

Beispiel:

<?php
  $a=array("a"=>"Dog","b"=>"Cat","c"=>"Horse");
  echo array_search("Dog",$a);
?>
Nach dem Login kopieren

2.array_splice()

Definition und Verwendung

Die Funktion array_splice() ähnelt der Funktion array_slice() und wählt eine Reihe von Elementen im Array aus, gibt sie jedoch nicht zurück, sondern löscht sie und ersetzt sie sie mit anderen Werten.

Wenn der vierte Parameter angegeben wird, werden die zuvor ausgewählten Elemente durch das durch den vierten Parameter angegebene Array ersetzt.

Das zuletzt generierte Array wird zurückgegeben.

Syntax

array_splice(array,offset,length,array)
Nach dem Login kopieren

Parameterbeschreibung
Array Erforderlich. Gibt ein Array an.
Offset Erforderlich. Zahlenwert. Wenn der Offset positiv ist, beginnt die Entfernung an dem Offset, der durch diesen Wert im Eingabearray angegeben wird. Wenn der Offset negativ ist, beginnt die Entfernung an dem durch diesen Wert angegebenen Offset vom Ende des Eingabearrays.
Länge optional. Zahlenwert. Wenn dieser Parameter weggelassen wird, werden alle Teile des Arrays vom Offset bis zum Ende entfernt. Wenn die Länge angegeben ist und positiv ist, werden so viele Elemente entfernt. Wenn die Länge angegeben wird und negativ ist, werden alle Elemente vom Offset bis zur Länge, gezählt vom Ende des Arrays, entfernt.
array Die entfernten Elemente werden durch Elemente in diesem Array ersetzt. Wenn keine Werte entfernt werden, wird das Element in diesem Array an der angegebenen Position eingefügt.

Tipps und Hinweise

Tipp: Wenn die Funktion keine Elemente entfernt (Länge=0), wird das Ersatzarray ab der Position des Startparameters eingefügt.

Hinweis: Schlüssel im Substitutionsarray werden nicht beibehalten.

Beispiel

<?php
  $a1=array(0=>"Dog",1=>"Cat",2=>"Horse",3=>"Bird");
  $a2=array(0=>"Tiger",1=>"Lion");
  array_splice($a1,0,2,$a2);
  print_r($a1);
  //输出:
 Array ( [0] => Tiger [1] => Lion [2] => Horse [3] => Bird )
 ?>
 //与例子 1 相同,但是输出返回的数组:
 <?php
  $a1=array(0=>"Dog",1=>"Cat",2=>"Horse",3=>"Bird");
  $a2=array(0=>"Tiger",1=>"Lion");
  print_r(array_splice($a1,0,2,$a2));
 ?>
 //输出:
 Array ( [0] => Dog [1] => Cat )
 //length 参数设置为 0:
 <?php
  $a1=array(0=>"Dog",1=>"Cat");
  $a2=array(0=>"Tiger",1=>"Lion");
  array_splice($a1,1,0,$a2);
  print_r($a1);
?>
//输出:
Array ( [0] => Dog [1] => Tiger [2] => Lion [3] => Cat )
Nach dem Login kopieren

Weitere Programmierkenntnisse finden Sie unter: Programmiervideo! !

Das obige ist der detaillierte Inhalt vonSo löschen Sie Array-Elemente basierend auf dem Schlüssel 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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!