Maison  >  Article  >  développement back-end  >  Une boucle for en php peut-elle traverser un tableau ?

Une boucle for en php peut-elle traverser un tableau ?

青灯夜游
青灯夜游original
2022-11-17 18:50:562195parcourir

En PHP, la boucle for peut parcourir le tableau et la syntaxe est "for($i=0;$i

Une boucle for en php peut-elle traverser un tableau ?

L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 8.1, ordinateur DELL G3

La boucle for en php peut parcourir le tableau.

La boucle for est un moyen de parcourir un tableau qui peut être utilisé dans presque tous les langages, et le langage PHP ne fait pas exception.

1. Analyse structurelle de l'instruction de boucle for

La boucle for prédéfinira les variables qui contrôlent le nombre de boucles dans l'instruction for, afin que l'instruction de boucle for puisse effectuer des opérations de boucle en fonction du nombre connu de boucles, ce qui convient pour une situation claire dans laquelle vous savez combien de fois le script doit être exécuté. Le format syntaxique de la boucle

for est le suivant :

for (初始化语句; 循环条件; 变量更新--自增或自减) {
    语句块;   
}

L'instruction de la boucle for peut être décomposée en 4 parties : les trois expressions dans () et {} "Bloc d'instructions", analysons-le ci-dessous. <code>()号中的三个表达式和{}中的“语句块”,下面我们来分析一下。

语句解析:

  • 初始化语句(表达式1):主要是初始化一个变量值,用于设置一个计数器,即循环开始的值;该语句仅在第一次循环时执行,以后都不会再执行。

  • 循环条件(表达式2):循环执行的限制条件,用于控制是否执行循环体中的代码;如果条件为TRUE,则循环继续,如果条件为FALSE ,则循环结束,立即退出循环。

  • 变量更新(表达式3):一个带有自增或自减操作的表达式,循环每执行一次,马上修改计数器的值,以使循环条件逐渐变得“不成立”。

  • 语句块:条件判断为真时,需要执行的若干代码。

上面的描述是不是有点绕,我们来看看for循环语句的执行流程图,可以更直观的了解for循环的执行过程:

Une boucle for en php peut-elle traverser un tableau ?

二、for循环语句遍历数组

下面我们先通过代码示例来具体看看如何遍历,然后通过分析代码来详细了解。

<?php
header("Content-type:text/html;charset=utf-8");
$array= array("香蕉","苹果","梨子","橙子","橘子","榴莲");
var_dump($array);
echo "for循环遍历输出:<br/><br/>";
for ($i=0; $i < count($array); $i++) { 
    echo $array[$i] . "<br/>";
} 
?>

输出:

Une boucle for en php peut-elle traverser un tableau ?

代码分析:

  • 初始化语句为$i=0:示例的数组是一个索引数组,数组的下标默认从0开始,因此循环开始的值要为0。

  • 循环条件$i <count>:count()函数用于计算数组长度,则循环条件为<code>$i ,因为当<code>$i = 数组长度时,$i已经超出了索引范围(索引范围是0 ~ 数组长度-1)。

  • 变量更新$i++:每次循环后,变量$i自动增加1,直到$i = 数组长度时,因为$i超出了索引范围,以使循环条件不成立,然后退出循环。

  • echo $array[$i] . "<br>":每循环一次,就根据$i值--数组下标

  • Analyse des instructions :

  • Instruction d'initialisation (expression 1) : initialise principalement une valeur de variable, utilisée pour définir un compteur, c'est-à-dire Le valeur à laquelle la boucle commence ; cette instruction n'est exécutée que lors de la première boucle et ne sera pas exécutée à nouveau.

  • Condition de boucle (expression 2) : condition de restriction d'exécution de la boucle, utilisée pour contrôler s'il faut exécuter le code dans le corps de la boucle ; si la condition est VRAIE, la boucle continue, si la condition est FAUX, la boucle ; se termine immédiatement Quitter la boucle.

  • Mise à jour de variable (Expression 3) : Une expression avec une opération d'incrémentation ou de décrémentation. Chaque fois que la boucle est exécutée, la valeur du compteur est immédiatement modifiée, de sorte que la condition de boucle devient progressivement "faux". .


  • Bloc d'instructions : plusieurs codes qui doivent être exécutés lorsque la condition est jugée vraie.

    Une boucle for en php peut-elle traverser un tableau ?

    La description ci-dessus est-elle un peu alambiquée ? Jetons un coup d'œil à l'organigramme d'exécution de l'instruction

    for de la boucle

    pour comprendre le processus d'exécution de la boucle for de manière plus intuitive : Une boucle for en php peut-elle traverser un tableau ?

    Une boucle for en php peut-elle traverser un tableau ?

    2. L'instruction for parcourt le array

    🎜🎜 Voyons d'abord comment parcourir des exemples de code, puis apprenons-en plus à ce sujet en analysant le code. 🎜
    <?php
    header("Content-type:text/html;charset=utf-8");
    $arr=array(&#39;brand&#39;=>&#39;google&#39;,&#39;email&#39;=>&#39;Gmail&#39;,&#39;WebBrowser&#39;=>&#39;Chrome&#39;,&#39;phone&#39;=>&#39;Android&#39;);
    for($i=1;$i<=count($arr);$i++){
    echo $arr[$i];
    }
    ?>
    🎜Sortie : 🎜🎜🎜Une boucle for en php peut-elle traverser un tableau ? 🎜🎜🎜Analyse du code : 🎜🎜🎜
    • 🎜L'instruction d'initialisation est $i=0 : le tableau de l'exemple est Un tableau indexé. Les indices du tableau commencent à 0 par défaut, donc la valeur au début de la boucle doit être 0. 🎜🎜
    • 🎜Condition de boucle $i <count> : La fonction count() est utilisée pour calculer la longueur du tableau, alors la condition de boucle est <code>$i code>, car lorsque <code>$i = array length, $i a dépassé la plage d'index (la plage d'index est 0 ~ <code>longueur du tableau-1). 🎜🎜
    • 🎜Mise à jour de la variable $i++ : Après chaque boucle, la variable $i augmente automatiquement de 1 jusqu'à ce que $i = longueur du tableau Lorsque, parce que $i dépasse la plage d'index, la condition de boucle n'est pas établie, puis la boucle se termine. 🎜🎜
    • 🎜echo $array[$i] '<br>" : chaque fois qu'il boucle, il sera basé sur la valeur $i --array. indice, pour afficher les éléments du tableau. 🎜🎜🎜🎜Remarque : L'utilisation d'une boucle for pour parcourir un tableau ne modifiera pas le pointeur interne du tableau. 🎜🎜🎜🎜Remarque : Il existe les restrictions suivantes lors de l'utilisation de for pour parcourir des tableaux : 🎜🎜🎜🎜🎜1. Le tableau parcouru doit être un tableau d'index (c'est-à-dire un tableau dont l'indice est un nombre) et ne peut pas être un tableau associatif (l'indice est une chaîne) Array)🎜🎜🎜Le code suivant🎜🎜
      <?php
      header("Content-type:text/html;charset=utf-8");
      $array=array(1=>&#39;Google&#39;,5=>&#39;Chrome&#39;,7=>&#39;Android&#39;,9=>&#39;Youtube&#39;,12=>&#39;Gmail&#39;);
      //print_r($array);
       
      for($i=0;$i<count($array);$i++){
      echo $array[$i],"<br>";
      }
      ?>
      🎜🎜🎜🎜 signalera une erreur au moment de l'exécution, qui montre que for n'est pas adapté pour parcourir des tableaux associatifs🎜🎜🎜2. by for doit non seulement être un tableau d'index, mais aussi download L'indice doit être un entier continu Si ce n'est pas un entier continu, une invite se produira🎜🎜rrreee🎜🎜🎜🎜 Par conséquent, le tableau parcouru par la boucle for. doit être un tableau d’index et les indices doivent être continus. 🎜

      Recommandé : "Collection de questions d'entretien PHP (collection)" "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!

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