• 技术文章 >后端开发 >PHP问题

    php判断语句怎么写

    青灯夜游青灯夜游2021-07-15 14:14:50原创72

    写法:1、“if(条件){语句块;}else if(条件){语句块;}else{语句块;}”;2、“switch(表达式){case 值1:语句块;break;...case 值n:语句块;break;default:语句块;}”。

    本教程操作环境:windows7系统、PHP7.1版,DELL G3电脑

    在程序开发过程中,经常需要根据不同的情况,执行不同的代码,这个时候就需要用到条件判断,在PHP中,可使用if或者switch进行条件判断,具体应根据实际场景进行选择相应的条件语句:

    1、if else语句

    if else 语句是流程控制中根据条件判断执行的一种。该语句执行时先对条件进行判断,然后根据判断结果做出相应的操作。它又可以细分为三种,分别是 if 语句、if...else 语句、if...else if...else 语句。

    1)、if条件语句

    if 语句是流程控制中最简单的一种。只判断某个条件是否为真,如果为真就执行特定的语句块。语法格式如下:

    if (判断条件) {
        语句块;
    }

    如果需要执行的语句块包含一条以上的语句,则要使用{ }把 它们括起来,表示一个整体;如果要执行的语句只有一条,就可以省略大括号标记。像下面这样:

    if (判断条件)
        一条语句;

    if 语句的执行流程如下图所示:

    1.gif

    【示例】 定义一个数组,使用 if 语句判断这个数字是不是偶数,代码如下所示:

    <?php
        $num = 34;
        if ($num % 2 == 0) {
            echo '$num ='.$num.', 是偶数!';
        }
    ?>

    运行结果如下:

    $num =34, 是偶数!

    2)、if...else...条件语句

    if 语句只能对判断结果为真的情况执行操作,这在很多情况下是不够的,于是就有了 if...else 这种形式的语句。与 if 判断不同,if...else 语句不仅对判断结果为真的情况执行操作,对非真的情况也可以执行相应的操作。

    else 语句延伸了 if 语句,可以在 if 语句中表达式的值为 FALSE 时执行相应的语句。另外需要注意的是,else 语句是 if 语句的从句,必须和 if 语句一起使用,不能单独存在。

    if...else 语句的语法格式如下:

    if (判断条件) {
        语句块 1;
    } else {
        语句块 2;
    }

    在上面的格式中,如果“判断条件”为真,则执行“语句块 1”;否则执行“语句块 2”。“语句块 1”和“语句块 2”都可以包含多条语句。与 if 语句相同的是,如果“语句块 1”和“语句块 2”中都只包含一条语句的话,可以省略大括号{ },如下所示:

    if (判断条件)
        语句块 1;
    else
        语句块 2;

    if...else 语句的执行流程如下图所示:

    2.gif

    示例】使用 rand() 函数生成一个随机数 $num,然后判断这个随机数是偶数还是奇数,代码如下所示:

    <?php
        $num = rand(1,31);  //生成一个 1~31 之间的随机数
        if ($num % 2 == 0) {
            echo '$num ='.$num.', 是偶数!';
        } else {
            echo '$num ='.$num.', 是奇数!';
        }
    ?>

    运行结果如下:

    $num =27, 是奇数!

    3)、if...elseif...else...条件语句

    else if 语句和 else 语句一样,它延伸了 if 语句,else if 语句会根据不同的表达式来确定执行哪个语句块。

    在 PHP 中也可以将 else if 这两个关键字合并在一起(如 elseif)来使用。else if 语句的语法格式如下所示:

    if (判断条件 1) {
        语句块 1;
    } else if (判断条件 2) {
        语句块 2;
    } else if (判断条件 3) {
        语句块 3;
    }
    ......
    else if (判断条件 n) {
        语句块 n;
    }
    else{
        语句块 n+1;
    }

    在上面的 else if 的语法中,如果第一个“判断条件 1”为 TRUE,则执行“语句块 1”语句;如果第二个“判断条件 2”为 TRUE,则执行“语句块 2”语句;以此类推。如果表达式的条件都不为 TRUE,则执行 else 子句中的“语句块 n+1”语句,当然最后的 else 语句也可以省略。

    在 else if 语句中同时只能有一个表达式为 TRUE,即在 else if 语句中只能有一个语句块被执行。如果有多个表达式的值为 TRUE 时,只会执行第一个表达式所对应的语句块。

    if...else if...else 语句的执行流程如下图所示:

    3.gif

    【示例】根据成绩判断成绩的优、良、中、差级别,代码如下所示:

    <?php
        $score = 89; 
        if ($score > 90) {
            echo '成绩的级别为:优!';
        } else if ($score > 70) {
            echo '成绩的级别为:良!';
        } else if ($score > 60) {
            echo '成绩的级别为:中!';
        } else {
            echo '成绩的级别为:差!';
        }
    ?>

    运行结果如下:

    成绩的级别为:良!

    2、switch...case...条件语句

    switch 语句和 if...else if...else 语句相似,也是一种分支结构,与 if...else if...else 语句相比 switch 语句更加简洁明了。

    switch 语句由一个表达式和多个 case 标签组成,case 标签后紧跟一个代码块,case 标签作为这个代码块的标识。switch 语句的语法格式如下:

    switch(表达式){
        case 值 1:
            语句块 1;
            break;
        case 值 2:
            语句块 2;
            break;
        ... ...
        case 值 n:
            语句块 n;
            break;
        default:
            语句块 n+1;
    }

    switch 语句根据表达式的值,依次与 case 中的值进行比较,如果不相等,继续查找下一个 case;如果相等,就会执行对应的语句,直到 switch 语句结束或遇到 break 为止。

    一般来说,switch 语句最终都有一个默认值 default,如果在前面的 case 中没有找到相符的条件,则执行默认语句,和 else 语句类似。

    switch 语句的执行流程如下图所示:

    4.gif

    在使用 switch 语句时应该注意以下几点:

    【示例】使用 date() 函数获取当前星期的英文缩写,根据缩写打印今天是星期几,代码如下所示:

    <?php
        $week = date('D');
        switch($week){
            case 'Mon':
                echo '星期一';
                break;
            case 'Tue':
                echo '星期二';
                break;
            case 'Wed':
                echo '星期三';
                break;
            case 'Thu':
                echo '星期四';
                break;
            case 'Fri':
                echo '星期五';
                break;
            case 'Sat':
                echo '星期六';
                break;
            case 'Sun':
                echo '星期日';
                break;
        }
    ?>

    运行结果如下:

    星期四

    推荐学习:《PHP视频教程

    以上就是php判断语句怎么写的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:php 判断语句
    上一篇:php怎么实现合并数组且key不变 下一篇:php怎么定义数组但不赋值
    第16期线上培训班

    相关文章推荐

    • nginx 没有解析php怎么办• 如何解决php无法加载memcache问题• php 多维数组怎么转为字符串• php数组怎么替换value值• php5.6怎么设置时区• php pdo类的方法有哪些

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网