Cet article présente principalement l'utilisation de each et list en PHP, analyse les compétences d'utilisation de each et list sous forme d'exemples, et analyse les compétences de chacune combinées avec la fonction list pour implémenter la traversée de tableaux Amis dans le besoin. peut s'y référer. J'espère que cela aide tout le monde.
1. Utilisation de chacun
Regardez d'abord l'API
tableau chacun (tableau &$array)
Ceci est décrit dans l'API : each — renvoie la paire clé/valeur actuelle dans le tableau 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. Utilisation de list
Regardons d'abord ce que dit l'API
Comme array(), ce n'est pas un vrai function , mais une structure de langage. list() attribue des valeurs à un ensemble 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. C'est ainsi que la liste est attribuée.
Tout d'abord : ignorez le tableau de droite et regardez les variables dans la liste De. de gauche à droite, cela devrait être $a = arr[0] $b=arr[1] $c=arr[3]
Ensuite : commencez à attribuer des valeurs 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 chaque implémentation de parcours de tableau avec liste
<?php $arr = array('你','若','安','好','便','是','晴','天'); for(;list($k,$v)=each($arr);){ echo $k,'~',$v,'<br />'; } /* return: 0~你 1~若 2~安 3~好 4~便 5~是 6~晴 7~天 */ ?>
Recommandations associées :
Explication détaillée de la fonction d'autorisation de fichier PHP chmod
Explication détaillée de la façon dont PHP implémente le mécanisme Hook
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!