流程控制

流程控制
    1.概述
        任何PHP脚本都是由语句组成的。 此外,还可以用花括号将一组语句封装成一个语句组,语句组本身可以当作是一行语句
    2.在PHP中有三种基本的程序结构:
        顺序结构
        分支结构
        循环结构


顺序结构
    在程序结构中,最基本的就是顺序结构,表示程序会自上而下的顺序执行。


流程控制之分支结构:
    1. 单向分支
        if (表达式为true) {
            执行真区间
        }


    2. 双向分支
        if (true) {
            表达式为true执行真区间
        } else {
            表达式为false执行假区间
        }


    3. 多向分支
        if (表达式1) {
            表达式1为true执行真区间,这个分支就执行完了,否则继续往后
        } elseif (表达式2) {
            表达式2为true执行这里,这个分支就执行完了,否则继续往后
        } elseif (表达式3) {
            表达式3为true执行这里,这个分支就执行完了,否则继续往后
        } else {
            表达式为false执行假区间
        }


    if分支的特点:
        1. 所有的条件表达式最终都会被转换为布尔值,要么为true,要么为false
            if ('123') { true }
        2. 当if后面没有花括号{}包裹的时候,只会执行1条PHP语句(了解)
        3. else if中间可以加上一个或多个空格隔开(了解)
        4. 流程控制有一些替代写法(了解)


    4. 巢状分支(就是if嵌套)


    5. switch语句的多向分支
        switch (表达式) {
            case 值1:
                语句体;
            case 值2:
                语句体;
            ...
            default:
                语句体;
        }
        switch会取出括号里的值,然后与语句体中的case所列出的值逐一比较(用==比较),如果结果为false,则将结果往下一个case传递;如果为true,则执行该case中的语句体;然后再碰到break语句即跳出switch条件判断,如果所有的值比对都不符合,则会执行default中的语句体


流程控制之循环结构:
    1、while循环
        while (表达式) {
            循环体;
        }


        当‘表达式’的结果为真时,程序将反复执行‘循环体’,直到表达式的结果为假时才停止执行该段程序,循环结束


    2、do...while循环
        do {
            循环体
        } while (表达式);


        程序会先执行 do 里面的循环体,然后再检查表达式是否为真;
        真,就再进行 do 语句体中的语句;
        假,循环立马结束,不再执行循环体;继续运行后续代码


    3、for循环
        for (初始化语句; 条件判断语句; 每次循环后执行的语句) {
            循环体;
        } 
        初始化语句:在整个循环开始前,无条件的执行一次,并且只有一次;
        条件判断语句:在每次循环前都会判断,为true执行循环体,为false就终止循环
        每次循环后执行的语句:每单次循环后都会执行这个语句


特殊的流程控制语句:
    break       跳出整个循环
    continue    跳出本次循环,继续下一次循环
    exit 或者 die     结束脚本执行;
        die;
        exit;
        die();
        exit();
        die('结束时输出的字符串');
        exit('结束时输出的字符串');


流程控制的替代语法:
    替代语法的基本形式是把左花括号({)换成冒号(:),把右花括号(})分别换成 endif;,endwhile;,endfor; 以及 endswitch;。
    
    do-while 只有一种语法,没有替代语法
posted @ 2018-03-03 17:59  执码挥战  阅读(144)  评论(0编辑  收藏  举报