Maison > Article > développement back-end > Quelles sont les différentes façons de parcourir des tableaux en php
Méthode Loop : 1. Utilisez l'instruction for pour parcourir le tableau ; 2. Utilisez l'instruction foreach() pour parcourir le tableau ; 3. Utilisez l'instruction while avec les fonctions list() et each() pour parcourir le tableau ; 4. Utilisez l'instruction while avec key() , current(), next() et d'autres fonctions de pointeur pour parcourir le tableau.
L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 7.1, ordinateur DELL G3
1 Utilisez la boucle for pour parcourir le tableau
conut($arr);
pour compter. nombre d'éléments du tableau.
La boucle for ne peut être utilisée que pour parcourir des tableaux d'index purs ! ! ! !
S'il existe un tableau associatif, count comptera le nombre total des deux tableaux et utilisera une boucle for pour parcourir le tableau mixte, provoquant la sortie du tableau hors des limites ! !
par exemple :
$arr = array(1,2,3,5,6,7); $num = count($arr); //count最好放到for外面,可以让函数只执行一次 echo "数组元素的个数{$num}<br/>"; for($i=0;$i<$num;$i++){ echo "{$i}==>{$arr[$i]}<br/>"; }
2. La boucle forEach traverse le tableau
foreach peut parcourir n'importe quel type de tableau ! ! !
Par exemple :
$arr = array(1,2,3,"one"=>4,5,6,7); foreach($arr as $value){ echo "{$item}<br>"; } foreach($arr as $key => $value){ echo "{$key}==>{$item}<br>"; }
Par exemple, analysez le tableau suivant :
$h51701 = array( "group1"=>array( array("name"=>"张三","age"=>14,"sex"=>"男"), array("name"=>"张三","age"=>14,"sex"=>"男"), array("name"=>"张三","age"=>14,"sex"=>"男") ), "group2"=>array( array("name"=>"张三","age"=>14,"sex"=>"男"), array("name"=>"张三","age"=>14,"sex"=>"男"), array("name"=>"张三","age"=>14,"sex"=>"男") ), "group3"=>array( array("name"=>"张三","age"=>14,"sex"=>"男"), array("name"=>"张三","age"=>14,"sex"=>"男"), array("name"=>"张三","age"=>14,"sex"=>"男") ) ); foreach ($h51701 as $key => $value) { echo "{$key}0c6dc11e160d3b678d68754cc175188a0c6dc11e160d3b678d68754cc175188a"; foreach ($value as $key1 => $value1) { echo "第".($key1+1)."个同学0c6dc11e160d3b678d68754cc175188a"; foreach ($value1 as $key2 => $value2) { echo "{$key2}==>{$value2}0c6dc11e160d3b678d68754cc175188a"; } echo "0c6dc11e160d3b678d68754cc175188a"; } echo "------------------------0c6dc11e160d3b678d68754cc175188a"; }
3. Utilisez list(), each(), while() pour parcourir le tableau
(Points clés) list() : utilisé pour ajouter chaque élément du tableau Value, affecté à chaque paramètre de la fonction liste. (Les paramètres de la fonction list doivent être inférieurs ou égaux au nombre d'éléments dans le tableau) ; analyser le tableau à travers des paramètres vides. La valeur ;
(souligné) each() : utilisée pour renvoyer la paire clé-valeur où se trouve le pointeur actuel du tableau ! Et reculez le pointeur d'un chiffre ;
Valeur de retour : si le pointeur a le chiffre suivant, renvoie un tableau. Contient un tableau d'index (clé 0, valeur 1) et un tableau associatif (clé "clé", valeur "valeur") ; si le pointeur n'a pas le chiffre suivant, renvoie false !!Une fois le tableau terminé ; parcouru une fois en utilisant each(), le pointeur est utilisé à côté du dernier chiffre ; c'est-à-dire que si each() est utilisé à nouveau, il retournera toujours false
Si vous avez encore besoin de l'utiliser, vous devez utiliser la réinitialisation ; ($arr); function , réinitialisez le pointeur du tableau ;
eg:
while(list($key,$value) = each($arr)){ echo "{$key}-->{$value}<br>"; } reset($arr);
$arr = array(1,2,3,"one"=>4,5,6,7); foreach($arr as $value){ echo "{$item}<br>"; } foreach($arr as $key => $value){ echo "{$key}==>{$item}<br>"; }
while(true){ $a = each($arr); if($a){ echo "{$a[0]}-->{$a[1]}<br>"; echo "{$a['key']}-->{$a['value']}<br>"; }else{ break; } }
4 Utilisez le pointeur du tableau pour parcourir le tableau
④ reset : restaurez le pointeur du tableau. au premier chiffre Bit. Et renvoie la première valeur ; un tableau vide renvoie false
⑤ key : Renvoie la clé où se trouve le pointeur actuel ;
⑥ current : Renvoie la valeur où se trouve le pointeur actuel
while(list($key,$value) = each($arr)){ echo "{$key}-->{$value}<br>"; } reset($arr); while(list($key,$value) = each($arr)){ echo "{$key}-->{$value}<br>"; }
Apprentissage recommandé : "
Tutoriel vidéo PHP ;》
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!