2.2PHP循环结构

16 篇文章 0 订阅
15 篇文章 0 订阅

2.2.1、while语句
和 if 语句一样,可以在 while 循环中用花括号括起一个语句组,或者用替代语法:
while (expr):
statement

endwhile;
while语句可以像if语句一样嵌套,但是建议不要超过三层
示例:

<?php
    /* example 1 */
    $i = 1;
    while ($i <= 10) {
        echo $i++; 
    }

    /* example 2 */
    $i = 1;
    while ($i <= 10):
        print $i;
        $i++;
    endwhile;

2.2.2、do…while循环
do…while与while区别是do…while会先执行“语句块”,再执行条件判断。这样,不管如何都会执行一次“语句块”。与while和for相比,do…while使用相对来说较少。
语法格式:

<?php
    do{
    ...//语句块
    }while(条件);

2.2.3、for循环
语法格式:

<?php
    for(初始化;条件表达式;增量){
        ...//语句块
    }

for循环中的三个表达式是允许为空的。
eg:

<?php
    $i = 0;
    for( ; ; ){
        if($i > 10){
            break;
        }
        echo $i.'<br />';
        $i++;
    }

这三个表达式中,每个表达式,还可以编写多条语句,只要其表达式合理,都是可以的。第二个表达式最后一定要是布尔值。
eg:

<?php
    for($i=0,$j=1 ; $i<10,$j<10 ; $i++,$j+=5){
        echo $i.'/'.$j.'<br />';
    }

2.2.4、特殊流程控制语句
①break
break 结束当前 for,foreach,while,do-while 或者 switch 结构的执行。
break 可以接受一个可选的数字参数来决定跳出几重循环,当不给参数数字时,相当于break 1;。
5.4.0版本之后, break 0; 不再合法。这在之前的版本被解析为 break 1;。
5.4.0版本之后, 取消了变量作为参数传递(例如 $num = 2; break $num;)。
eg:

<?php
$num = 1;
$i = 0;
while (++$i) {
    switch ($i) {
    case 5:
        echo "At 5<br />\n";
        break 1;  /* 只退出 switch. 这里不能写break 0;也不能写break $num;*/
    case 10:
        echo "At 10; quitting<br />\n";
        break 2;  /* 退出 switch 和 while 循环 */
    default:
        break;
    }
}

②continue
continue 在循环结构用来跳过本次循环中剩余的代码并在条件求值为真时开始执行下一次循环。
continue 接受一个可选的数字参数来决定跳过几重循环到循环结尾。默认值是 1,即跳到当前循环末尾。
5.4.0版本之后, continue 0; 不再合法。这在之前的版本被解析为 continue 1;。
5.4.0版本之后, 取消变量作为参数传递(例如 $num = 2; continue $num;)。
eg:

<?php
    $i = 0;
    while ($i++ < 2) {
        echo "Outer<br />\n";
        while (1) {
            echo "Middle<br />\n";
            while (1) {
                echo "Inner<br />\n";
                continue 3;
            }
            echo "这里不会被输出";
        }
        echo "这里不会被输出,因为continue 3已直接跳出本次循环开始下一次循环";
    }
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值