• PHP流程控制


      PHP流程控制

    流程控制就是人类社会的做事和思考和处理问题的方式和方法,例如,一个人要去一个地方可能选择以下几种方式:

    1,司机开车

    2,民航

    3,自己家的专机

    4,火车动车

    5,骑马

    6,游轮

    1.1.4.1if条件结构流程

    王同学是生活极度充满娱乐化和享受生活的人。他抵达北京或者大连的时候做的事,他抵达后做的事情,如下:

    半夜到达,先去夜店参加假面舞会

    早上抵达,爱在酒店泡个澡

    中午到达,会吃上一份神户牛肉

    晚上到达,总爱去找朋友去述说一下心中的寂寞

    我们来了解一下他的语法规则【知识点要求:默写】

    <?php
    if(判断语句1){
        执行语句体1
    }elseif(判断语句2){
        执行语句体2
    }else if(判断语句n){
            执行语句体n
    }else{
            最后的else语句可选
    }
    //后续代码
    ?>
    <?php
    $week = date("6");
    //判断星期小于6,则输出:还没到周末,继续上班.....
    if ($week < "6") {
    echo "还没到周末,继续上班.....";
    } else {
    echo 'list.go';
    }
    ?>
    <?php
    $date = rand(0,23);//给$date定义一个
    echo "到达时间为 $date 点 
    ";
    if ($date >= 6 && $date <10){
        echo '去酒店泡澡';
    }elseif($date >= 10 && $date <18){
        echo '吃神户牛肉';
    }elseif($date >= 18 && $date <22){
        echo '找个朋友聊聊天';
    }else{
        echo'睡觉';
    }
    ?>

    1.1.4.2 if语句多种嵌套

    王总在出行和项目中也是极度有计划性。他给自己的生活秘书和工作秘书分别指派了出差的行程:

    生活上:

     先查天气,下雨带雨具和毛巾。不下雨要带防晒霜

     雨具、毛巾和防晒霜的情况要提前检查,如果没有要及时买

    工作上:

     要提前沟通去大连前的工作计划,准备好了要及时检查,检查合格,打印签单。

      没有及时准备好的情况下,要列出主要的项目沟通议题。

    类似于上面的这种情况判断,我们就需要用到if...elseif...else反复嵌套的结构了。

    if语句中可以嵌套一个或多个if语句,以实现对多个参数的判断,这就是if语句的多种嵌套。其结构形式如下:

    <?php
    if(判断1){
        if(判断2){
                代码段 1    
        }else{
                代码段2
            }
    }else{
        if(判断3){
                代码段3
            }else{
                代码段4
            }
    }
    ?>
    <?php
    $kaihui=rand(0,1);
    if($kaihui){
        $zhunbei=rand(0,1);
        if($zhunbei){
            echo '查看会议报告';
        }else{
            echo '炒工作秘书鱿鱼';
        }
    }else{
        $shenghuomishu=rand(0,1);
        if($shenghuomishu){
            $xiayu=rand(0,1);
            if($xiayu){
                $yusan=rand(0,1);
                if($yusan){
                    echo '带上雨伞';
                }else{
                    echo '购买雨伞然后带上';
                }
            }else{
                $fangshaishuang=rand(0,1);
                if($fangshaishuang){
                    echo '带上防晒霜';
                }else{
                    echo '购买防晒霜然后带上';
                }
            }
        }else{
            echo'好好学习天天向上';
        }
    }
    ?>
    //书写技巧:先将多个if(){}else{}语句写出来,然后逐个嵌套!

    2.1.4.2 switch语句的使用

    王同学家里头特别有钱,所以他的行程方式和正常人的又有些不一样。

    他的出行方式呢有6种,如下:

    1,司机开车

    2,民航

    3,自己家的专机

    4,火车动车

    5,骑马

    6,游轮

    switch...case的语法结构如下:

    <?php
    switch(变量){    //字符串,整型
           case 具体值:
                   执行代码;
                   break;
           case 具体值2:
                   执行代码2;
                   break;
           case 具体值3:
                   执行代码3;
                   break;
           default:
    }
    
    ?>

    上面的break是可选的

    上面的default也是可选的

    不要在case 后面写成分号,后面是冒号:

    不要在case后面写判断区间,如($foo > 20 或者 $foo == 30)

    switch里面在变量最好是 整型,字符串,因为布尔判断更适合if...else..

    <?php
    $tool=rand(1,8);//定义出行工具
    switch($tool){
        case 1:
            echo '飞机';
            break;
        case 2:
            echo '大炮';
            break;
        case 3:
            echo '潜水';
            break;
        case 4:
            echo '骑马';
            break;
        case 5:
            echo '民航';
            break;
        case 6:
            echo '游泳';
            break;
        default:
            echo '爬着去';
    }
    ?>

    3.1.4.2 do while循环语句的使用

    王同学需要反复往返于北京和大连,就是典型的循环结构。假设王思总投资这个项目需要往返大连100次,每次往返都王同学都会计数一次。难道我们写一百遍同样的代码?显然对于智商极高的程序员来说不可能这样处理。

    我们抽象了人类的这种思维。我们定义一种循环结构

    <?php
    //定义需要往返的次数,老外喜欢从0开始计数,我们也从0开始计
    $count = 0;
    //while后面接布尔值判断,为真执行,为假停止
    //$count 小于100的时候执行,也就是$count为0至99的时候执行
    //如果$count不小于100了,循环停止执行后续的代码
    //循环开始处
    while($count < 100){
       echo '我是王思总,我是第' . $count .'次出差<br />';
       //每次执行让$count+1,这样的话,就不会产生$count永远小于100的情况了
       $count++;
    //循环结束
    }
    echo '后续代码';
    ?>

    下面我们来看看do...while与while的区别

    <?php
    $count=0;
    //while(){}先判断,后执行。
    while($count < 1){ echo "这是王总第 $count 次出差 <br />"; $count++; } echo '<br />';
    //do{}while()先执行一次,然后判断。
    do{ echo "这是王总第 $count 次出差 <br />"; }while($count < 0); echo '<br />'; for($cnt=2;$cnt<=3;$cnt++){ echo "分手后第 $cnt 年,我全都忘了你的样子<br />"; }?>

    4.1.4.2 for循环语句的使用

    同学反复往返与北京和大连,并且在本上记录往返次数。在PHP中还有另外一种实现方式能够实现同样的计数。

    for 循环是 PHP 中的一种计数型循环,它的语法比较数活多变。这是一个必须要掌握的知识点。

    for (表达示1; 表达示2; 表达示3){
            需要执行的代码段
    }
    表达式1 是初始化赋值,可以同时赋值多个代码。
    表达示2 在每次循环开始前求值。如果值为 TRUE,则继续循环,执行嵌套的循环语句。如果值为 FALSE,则终止循环。
    表达示3 在每次循环之后被求值。

    我们来写个简单的例子,看看:

    <?php
    for ($i = 1; $i <= 10; $i++) {
        echo '分手后第'.$i.'年,我全都忘了你的样子<br />';
    }
    ?>

    5.1.4.2 goto循环语句的使用

    我们讲解到一个故事,王同学每周往返,但有一个特例:

    项目失败后或者集团临时除知除外,他就可以不再这么每周往返了。

    基本语法

    语法参考:

    <?php
    $count=0;
    while($count < 1){
        echo "这是王总第 $count 次出差 <br />";
        $count++;
    }
    echo '<br />';
    goto end;
    do{
        echo "这是王总第 $count 次出差 <br />";
    }while($count < 0);
    echo '<br />';
    for($cnt=2;$cnt<=3;$cnt++){
        echo "分手后第 $cnt 年,我全都忘了你的样子<br />";
    }
    end:
    echo '王总退休了,小明失恋了';
    ?>

     //goto end;和end:之间的编码会直接被略过。因为goto end;直接跳转到了ech:

  • 相关阅读:
    c#操作Excel时,抛出异常:“未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序”
    设计模式(二)(Factory method)工厂方法设计模式
    设计模式(一)Singlton
    oracle中merge的用法,以及各版本的区别 Create
    rowid去重(删除表的重复记录)
    Oracle 12C 新特性之 恢复表
    Oracle 12C 新特性之 sqlplus查看History命令
    Oracle 12C 新特性之 PDB热克隆(本地克隆、远端异机克隆)
    Oracle 12C 新特性之 db默认字符集AL32UTF8、PDB支持不同字符集
    Oracle 12C 新特性之表分区部分索引(Partial Indexes)
  • 原文地址:https://www.cnblogs.com/dazhu-secure/p/13725409.html
Copyright © 2020-2023  润新知