for循环如何在php中实际运行?

时间:2016-06-24 00:53:46

标签: php loops for-loop

我是php的新手,我已经了解了php中的所有其他循环,但问题是我无法理解for循环如何工作对于ex: 这是代码;

$a = 0;
$b = 0;

for ($i=0; $i < 5; $i++) { 
    $a += 10;
    $b += 5;
}
echo("At the end of the loop a=$a and b=$b");

当我执行此脚本时,a = 50和b = 25的值!

  

是否将a值乘以i的增量值?像10 * 5 = 50。

6 个答案:

答案 0 :(得分:1)

您从$i=0开始,然后只要$a+10

$b+5$i <5
$i=0, $a=10, $b=5

$i=1, $a=20, $b=10

$i=2, $a=30, $b=15

$i=3, $a=40, $b=20

$i=4, $a=50, $b=25

$i=5,现在循环停止,因为$i is no longer <5

答案 1 :(得分:0)

你的循环运行五次。每次循环时,您都会将值Response加10。这样做五次就可以得到50。

答案 2 :(得分:0)

这是它的工作方式。

让我们说你没有钱。而且我告诉你,每次做5件事,我都会给你一块钱。但是,我只会给你5美元。起初你没有钱,经过一件苦差事,我给你5美元。现在你有5美元。你做了另一件苦差事,我给你另外5件,带你到十点。我现在给你两块钱。我给你另外5个 - 你有15个。我给你另一个 - 20 - 还有一个;带你25美元。现在我给了你我的限额美元,我们的循环已经完成了。

在这个故事中,我的美元是你的 <!-- In index.html--> <script src="https://apis.google.com/js/platform.js" async defer></script> <!-- In App home page--> <div class="g-hangout" data-render="createhangout"></div> 价值。从0开始,最多工作5.您的家务是$i值,每次都会添加。

代码示例:

$b

答案 3 :(得分:0)

+ =不增加其赋值运算符。

http://php.net/manual/en/language.operators.assignment.php

正如我在评论中提到的,以及其他人的回答。 + =将右侧的值添加到左侧的值。所以在循环中就像这样

  • 步骤0 $ a = 5(0 + 5)

  • 第1步$ a = 10(5 [上一次迭代退出值] +5)

  • 第2步$ a = 15(10 [上一次迭代退出值] + 5)

等......

值得注意的是,您也可以执行-= *=等等.=或附加所有相同类型的操作。

答案 4 :(得分:0)

当您知道要执行语句或语句块的次数时,将使用for语句。

enter image description here

<强>语法:

for (initialization; condition; increment){
   code to be executed;
}

初始值设定项用于设置循环迭代次数的计数器的起始值。为此目的,可以在此处声明变量,并将其命名为$i

示例

以下示例进行五次迭代并在循环的每次传递中更改两个变量的指定值 -

<html>
   <body>

      <?php
         $a = 0;
         $b = 0;

         for( $i = 0; $i<5; $i++ ) {
            $a += 10;
            $b += 5;
         }

         echo ("At the end of the loop a = $a and b = $b" );
      ?>

   </body>
</html>

这将产生以下结果 -

At the end of the loop a = 50 and b = 25

答案 5 :(得分:0)

For loop是进入条件循环。它首先评估条件,因此如果条件无法满足

,则与循环关联的语句块将不会运行一次

此for循环块内的语句将运行5次,$ i的值将为0到4; 想象一下,循环是单独运行的。

 $a=0;
 $b=0;
 for ($i = 0; $i < 5; $i++){
       echo $a += 10;
       echo '<br>';
 }

输出就像这样。

10
20
30
40
50

现在另一个循环

for ($i=0; $i < 5; $i++) { 
      echo  $b += 5;
      echo '<br>';

 }

输出就像这样

5
10
15
20
25

在每次迭代中,使用assignment operator x += y105添加到之前的迭代次数。