for 循环与 while 循环

循环结构三要素

a. 初始值

b. 循环条件

c. 改变条件

for循环

声明格式

for(表达式1;表达式2;表达式3){

​ 循环体语句

}
表达式1:用来循环的变量初始值。(开始值)

表达式2:用来判断循环的条件。(结束值)

表达式3:用来改变循环的条件。(定义值)

案例:下拉框从1900-2018

<?php
echo '<select>';
        for($i=1900;$i<=2018;$i++){
            echo '<option>'.$i.'</option>';
        }
    echo '</select>年';

案例:表格制作

<?php
//外层for循环控制tr
//内层for循环控制td
//使用双层循环输出十行十列隔行变色表格        
echo '<table border="1" width="800"  align="center">';
    for($a=0; $a<10;$a++){
        if($a % 2 !=0) {
            $bgcolor="red";
        }else{
            $bgcolor="pink";
        }
        echo'<tr bgcolor=" '.$bgcolor.'">';
        for($j=0;$j<10;$j++){
            echo'<td>1</td>';
        }
            echo '</tr>';
        }   
            echo '</table>';
            ?>
<?php
//单层循环输出十行十列隔行变色表格
    echo  '<table border="1" width="800" align="center">';
// echo '<tr>';
            for($i=0;$i<100;$i++){
                if($i % 10 == 0){
                    //echo '<tr>';
                    if($i % 20 == 0){
                        //我是偶数行
                        echo '<tr bgcolor="green">';
                    }else{
                        //我是奇数行
                        echo '<tr bgcolor="gold">';
                    }
                }
                echo '<td>'.$i.'</td>';

                if($i % 10 == 9){
                    echo '</tr>';
                }
            }
        //echo '</tr>';

    echo '</table>';

<!--第一行<tr>0-9</tr>-->
<!--第二行<tr>10-19</tr>-->
<!--第三行<tr>20-29</tr>-->
<!--第四行<tr>30-39</tr>-->
<!--第五行<tr>40-49</tr>-->
<!--相同颜色的行-->
<!--0 20 40 60 80-->
<!--10 30 50 70 90-->

while循环

while 格式:

while(判断条件){

​ 循环体语句

}

?php
echo  '<table border="1" width="800" align="center">';
$i= 0;
while($i<10){
    echo '<tr>';
        $j =0;
        while($j<10){
            echo '<td>'.$j.'</td>';
            $j++;
        }
    echo '</tr>';
    $i++;
}
echo '</table>';

do...while 循环

do...while 格式:

do{

​ 循环体语句

<?php
}while(判断条件);
$i = 1;
    do{
        echo $i.'<br/>';
        $i++;
    }while($i<10);
    echo $i;
    ?>

while 与 do...while 的区别:

<?php
    // 使用dowhile 输出1-10的数字
    //
    // while 和 dowhile 区别    
    // 先判断在执行,先执行在判断
    // do while  不管你同不同意都先执行一次在说,之后在判断,如果可以继续循环,如果不可以跳出循环。
    // while 先判断,如果可以执行循环,如果不可以跳出循环。 

    $i = 1;
    do{
        echo $i.'<br/>';
        $i++;
    }while($i>10);

    echo '<hr/>';

    $j=1;
    while($j>10){
        echo $j.'<br/>';
        $j++;
    }

四个方向的九九乘法表

<?php 
    //正
    echo "<table border='1'>";
    for ($i=1; $i <= 9; $i++){
        echo "<tr>";
        for($j=1;$j<=$i;$j++){
            echo "<td>".$i."*".$j."=".$i*$j."</td>";        
        }
        echo "</tr>";
    }
    echo "</table>";
    echo "<hr />";

    //正 倒过来
    echo "<table border='1'>";
    for ($i=9; $i >= 1; $i--){
        echo "<tr>";
        for($j=1;$i>=$j;$j++){
            echo "<td>".$i."*".$j."=".$i*$j."</td>";        
        }
        echo "</tr>";
    }
    echo "</table>";
    echo "<hr>";

    //靠右侧正
    echo "<table border='1'>";
    for ($i=1; $i <= 9; $i++){
        echo "<tr>";
        for ($z=0; $z < 9-$i; $z++) { 
            echo "<td>&nbsp;</td>";
        }   
        for($j=1;$j<=$i;$j++){
            echo "<td>".$i."*".$j."=".$i*$j."</td>";        
        }
        echo "</tr>";
    }
    echo "</table>";
    echo "<hr />";

    //靠右反过来
    echo "<table border='1'>";
    for ($i=9; $i >= 1; $i--){
        echo "<tr>";
        for ($z=0; $z < 9-$i; $z++) { 
            echo "<td>&nbsp;</td>";
        }   
        for($j=1;$j<=$i;$j++){
            echo "<td>".$i."*".$j."=".$i*$j."</td>";        
        }
        echo "</tr>";
    }
    echo "</table>";
    echo "<hr />";
?>
本作品采用《CC 协议》,转载必须注明作者和本文链接
汤清丽
讨论数量: 1

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!