Heim  >  Artikel  >  Backend-Entwicklung  >  Beispiele für den Unterschied zwischen PHP Each und List-Nutzung

Beispiele für den Unterschied zwischen PHP Each und List-Nutzung

伊谢尔伦
伊谢尔伦Original
2017-06-23 11:29:071217Durchsuche

Führt hauptsächlich in die Verwendung von „Every“ und „List“ in PHP ein, analysiert die Verwendungsfähigkeiten von „Every“ und „List“Funktion in Form von Beispielen und analysiert die Verwendung von „Every“ in Kombination mit der Listenfunktion zur Implementierung Array Traversierung mit Beispielen Die Techniken sind wie folgt:

1. Verwendung der einzelnen

Schauen Sie sich zunächst die API an

Array Each ( Array &$Array )

Dies wird in der API beschrieben: Each – gibt das aktuelle Schlüssel/Wert-Paar im Array zurück und bewegt den Array-Zeiger vorwärts ein Schritt

Lassen Sie uns zuerst einen Blick darauf werfen. Wie sieht das zurückgegebene Array aus?

<?php 
$arr = array(&#39;你&#39;,&#39;若&#39;,&#39;安&#39;,&#39;好&#39;,&#39;便&#39;,&#39;是&#39;,&#39;晴&#39;,&#39;天&#39;);
print_r(each($arr));
print_r(each($arr));
echo &#39;<hr />&#39;;
/*
返回
Array
(
  [1] => 你
  [value] => 你
  [0] => 0
  [key] => 0
)
Array
(
  [1] => 若
  [value] => 若
  [0] => 1
  [key] => 1
)
*/
//执行相同的一段代码,从‘你&#39;到‘若&#39;,说明each是会每执行一次,游标向数组尾部移动一步
//0和Key存放的是键
//1和value存放的是值
//因此each满足遍历数组的,得到当前的键和值,以及每执行一次,向尾部移动一步游标
//因此循环数组也可以用each这么写
reset($arr);
for(;$tmp=each($arr);){
  echo $tmp[0],&#39;~&#39;,$tmp[1],&#39;<br />&#39;;
}
/*
返回
0~你
1~若
2~安
3~好
4~便
5~是
6~晴
7~天
*/
?>

2. Verwendung der Liste

Schauen wir uns zunächst an, was die API sagt

Wie array() ist dies kein echtes Funktion, sondern eine Sprachstruktur. list() weist in einem Schritt Werte einer Menge von Variablen zu.

Sehen wir uns ein Beispiel an:

<?php 
list($a,$b)=array(10,20);
echo $a,&#39;~&#39;,$b,&#39;<br />&#39;;
//返回10~20
?>

Ja, Sie können einer Reihe von Variablen Werte zuweisen

Sehen wir uns ein weiteres Beispiel an:

<?php 
list($a,$b,,$c)=array(2=>10,3=>20,4=>30,1=>40);
echo $a,&#39;~&#39;,$b,&#39;~&#39;,$c,&#39;<br />&#39;;
//返回notice~40~20
//执行到$a的时候返回给我一个notice:说数组没有0键
?>

Folgen Die allgemeine Idee sollte sein, Folgendes zurückzugeben: 10~20~40

Warum wird dieser Hinweis~40~20 zurückgegeben?

Antwort: Dies betrifft den Funktionsmechanismus der Liste.

Erst einmal: Ignorieren Sie das Array auf der rechten Seite und schauen Sie sich die Variablen in der Liste an Von links nach rechts sollte es sein: $a = arr[0] $b=arr[1] $c=arr[3]

Dann: Beginnen Sie mit der Zuweisung von Werten von rechts nach links, die Reihenfolge der Zuweisung ist $c=arr[3] $b=arr[1 ] $a=arr[0]

Also $c=20 $b = 40 Da es kein arr[0] gibt, gab $a eine Warnung aus

3. Verwenden Sie jedes Array-Traversal mit der Liste

<?php 
$arr = array(&#39;你&#39;,&#39;若&#39;,&#39;安&#39;,&#39;好&#39;,&#39;便&#39;,&#39;是&#39;,&#39;晴&#39;,&#39;天&#39;);
for(;list($k,$v)=each($arr);){
  echo $k,&#39;~&#39;,$v,&#39;<br />&#39;;
}
/*
return:
0~你
1~若
2~安
3~好
4~便
5~是
6~晴
7~天
*/
?>

Das obige ist der detaillierte Inhalt vonBeispiele für den Unterschied zwischen PHP Each und List-Nutzung. 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