Maison >développement back-end >tutoriel php >Explication détaillée des exemples d'utilisation de chacun et liste en php

Explication détaillée des exemples d'utilisation de chacun et liste en php

伊谢尔伦
伊谢尔伦original
2017-06-23 13:33:231467parcourir

1. Utilisation de chacun

Premier coup d'œil à l'API

array each ( array &$array )

Ceci est décrit dans l'API : chacunRetours 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(&#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
)
*/
//执行相同的一段代码,从‘你’到‘若’,说明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. 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,&#39;~&#39;,$b,&#39;<br />&#39;;
//返回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,&#39;~&#39;,$b,&#39;~&#39;,$c,&#39;<br />&#39;;
//返回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(&#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~天
*/
?>
.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn