1. Utilisation de chacun
Premier coup d'œil à l'API
array each ( array &$array )
Ceci est décrit dans l'API : chacun — Retours arrayLa paire clé/valeur actuelle et avance le pointeur du tableau d'un pas
Voyons d'abord à quoi ressemble le tableau renvoyé ?
<?php $arr = array('你','若','安','好','便','是','晴','天'); print_r(each($arr)); print_r(each($arr)); echo '<hr />'; /* 返回 Array ( [1] => 你 [value] => 你 [0] => 0 [key] => 0 ) Array ( [1] => 若 [value] => 若 [0] => 1 [key] => 1 ) */ //执行相同的一段代码,从‘你’到‘若’,说明each是会每执行一次,游标向数组尾部移动一步 //0和Key存放的是键 //1和value存放的是值 //因此each满足遍历数组的,得到当前的键和值,以及每执行一次,向尾部移动一步游标 //因此循环数组也可以用each这么写 reset($arr); for(;$tmp=each($arr);){ echo $tmp[0],'~',$tmp[1],'<br />'; } /* 返回 0~你 1~若 2~安 3~好 4~便 5~是 6~晴 7~天 */ ?>
2. Comment utiliser list
Regardons d'abord ce que dit l'API
Comme array(), ce n'est pas une vraie fonction , mais une structure linguistique. list() attribue des valeurs à un groupe de variables en une seule étape.
Regardons un exemple :
<?php list($a,$b)=array(10,20); echo $a,'~',$b,'<br />'; //返回10~20 ?>
Oui, vous pouvez attribuer des valeurs à un ensemble de variables
Regardons un autre exemple :
<?php list($a,$b,,$c)=array(2=>10,3=>20,4=>30,1=>40); echo $a,'~',$b,'~',$c,'<br />'; //返回notice~40~20 //执行到$a的时候返回给我一个notice:说数组没有0键 ?>
Suivez L'idée générale devrait être de revenir : 10~20~40
Pourquoi cet avis~40~20 est-il retourné ?
Réponse : Cela implique le mécanisme de fonctionnement de la liste. Voici comment la liste est attribuée
Tout d'abord : ignorez le tableau de droite et. regardez les variables dans la liste. De gauche à droite, cela devrait être $a = arr[0] $b=arr[1] $c=arr[3]
Ensuite : commencez à attribuer des valeurs à partir de de droite à gauche, l'ordre d'affectation est $c=arr [3] $b=arr[1] $a=arr[0]
Donc $c=20 $b = 40 Parce qu'il n'y a pas d'arr [0], $a a donné un avertissement
3. Utilisez each et list pour implémenter la traversée de tableau
<?php $arr = array('你','若','安','好','便','是','晴','天'); for(;list($k,$v)=each($arr);){ echo $k,'~',$v,'<br />'; } /* return: 0~你 1~若 2~安 3~好 4~便 5~是 6~晴 7~天 */ ?>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!