美文网首页
PHP中的结构语句 -- PHP 学习 (四)

PHP中的结构语句 -- PHP 学习 (四)

作者: 无故下架内容so账号已弃用 | 来源:发表于2019-04-18 13:18 被阅读0次

    结构语句

    顺序结构

    顺序结构就像一条直线,按着顺序一直往下执行。我们编写的代码默认都是按照顺序结构执行的。


    if 和 if...else... 和 if..else if... 和 if..else if...else

    以上三种都是同样的方式进行判断, 再执行相应的代码块

    <?php
    if(条件){
         //分配服务器干的任务A
    }else{
         //分配服务器干的任务B
    }
    ?>
    

    通过条件判断,若返回值为布尔值TRUE,则执行任务A,若返回值为FALSE,则执行任务B。

    例子:

    <?php
        date_default_timezone_set('asia/ShangHai'); // 设置默认时区
        $day = date('m-d'); // 获取当前日期
        if ($day === '03-08') {
            echo '今天是女神节哦';
        } else if ($day === '10-01') {
            echo '今天是国庆节哦';
        } else {
            echo '今天好好上班吧,别想那么多!';
        }
    ?>
    

    结果: 今天好好上班吧,别想那么多!


    switch...case

    <?php
    switch (条件)
    {
    case 条件值一:
      //任务一
      break; 
    case 条件值二:
      //任务二
      break;
    default:
      //默认任务
    }
    ?>
    

    首先判断条件,若条件的返回值为条件值一,则执行任务一,若条件返回的值为条件值二,则执行任务二,若条件的返回值既不是条件值一也不是条件值二,则执行默认任务。break的作用是结束switch(后面会有专门举例说明),使用 switch 语句可以避免冗长的 “if..else if..else”代码块。

    例子:

    <?php
        $a = 4;
        switch ($a) {
            case 1:
                $a *= 1;
                break;
            case 2:
                $a *= 2;
                break;
            case 3:
                $a *= 3;
                break;
            case 4:
                $a *= 4;
                break;
            default:
                $a *= 0;
        }
        echo $a; // => 16
    ?>
    

    如果没有使用 break, 执行完 case 4 之后并没有终止代码的执行, 将继续执行 default 的内容, 结果如下:

    <?php
        $a = 4;
        switch ($a) {
            case 1:
                $a *= 1;
            case 2:
                $a *= 2;
            case 3:
                $a *= 3;
            case 4:
                $a *= 4;
            default:
                $a *= 0;
        }
        echo $a; // => 0
    ?>
    

    while 循环和 do...while循环

    while 循环结构:

    while (条件) {
      // 代码块
    }
    

    会先判断条件, 条件为 true 则执行 while 里面的代码块, 执行完毕, 再判断条件, 当条件为 false 时, 结束 while 循环

    <?php
        $num = 10;
        while ($num > 0) {
            echo $num.'<br />';
            $num--; // $num = $num - 1
        }
    ?>
    
    while 循环结果

    do...while循环结构:

    do{
         // 代码块
    } while (条件)
    

    会先去执行代码块, 再判断条件, 条件为 true 继续, 条件为 false 则结束, 和 while 不同的是, do...while 至少会执行一次代码块

    <?php
        $num = 10;
        do{
            echo $num.'<br />';
            $num--; // $num = $num - 1
        }while ($num > 10)
    ?>
    
    do...while循环结果

    for 循环

    <?php
    for(初始化;循环条件;递增项){
          //执行任务
    }
    ?>
    

    for 语句中,“初始化”在循环开始前无条件求值一次,“循环条件”在每次循环开始前求值。如果值为 TRUE,则继续循环,执行循环体语句(执行任务)。如果值为 FALSE,则终止循环。“递增项”在每次循环之后被求值(执行)。其常用于循环执行代码块指定的次数。

    例子:

    <?php
        for ($i=0; $i<10; $i++) {
            echo $i.'<br />';
        }
    ?>
    
    for 循环结果

    foreach 循环

    PHP 中的 foreach 循环语句, 常用语遍历数组, 一般有两种使用方法:

    • 只取值, 不取下标
    <?php
     foreach (数组 as 值){
    //执行的任务
    }
    ?>
    

    例子:

    <?php
        $arr = array('2010'=>'liguoyou', '2012'=>'guoyou', '2019'=>'guoyou.li');
    
        foreach ($arr as $v) {
            echo $v.'<br />';
        }
    ?>
    
    foreach 只取值,不取下标的例子结果
    • 同时取下标和取值
    <?php
    foreach (数组 as 下标 => 值){
     //执行的任务
    }
    ?>
    

    例子:

    <?php
        $arr = array('2010'=>'liguoyou', '2012'=>'guoyou', '2019'=>'guoyou.li');
    
        foreach ($arr as $key => $v) {
            echo $key.':'.$v.'<br />';
        }
    ?>
    
    foreach 同时取值和取下标

    注: array 有默认索引, 从 0 开始

    <?php
        $arr = array('liguoyou', 'guoyou', 'guoyou.li');
    
        foreach ($arr as $key => $v) {
            echo $key.':'.$v.'<br />';
        }
    ?>
    
    array 默认索引

    更多: PHP中的遍历数组 -- PHP 学习 (十三)

    参考资料来源: https://www.imooc.com/learn/54

    相关文章

      网友评论

          本文标题:PHP中的结构语句 -- PHP 学习 (四)

          本文链接:https://www.haomeiwen.com/subject/digowqtx.html