PHP8条件控制语句-PHP8知识详解

我们昨天说了流程控制的结构有顺序结构选择结构循环结构选择结构就是条件结构。

条件控制语句就是对语句中不同条件的值进行判断,进而根据不同的条件执行不同的语句。

在本文中,学习的是if语句、if...else语句、if...elseif语句和switch语句。

1、if语句

if语句是最为常见的条件控制语句。它的格式为:

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

这种形式只是对一个条件进行判断。如果条件成立,则执行命令语句,否则不执行。

如果<条件>成立(为true时)则执行<语句块>,如果条件不成立(为false)时,则继续执行"}"后面的语句。如:

<?https://www.phpfw.com/tag/php/
$num = 12;  
if($num%2==0)  
{  
    echo "$num","是一个偶数";  
}
?>

执行结果如下:

12是一个偶数

2、if...else语句

在条件成立时执行一块代码,条件不成立时执行另一块代码,请使用 if...else 语句。格式如下:

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

当条件成立时执行<语句块1>,条件不成立时执行<语句块2>。如下面的代码:

<?php
$num = 11;
if ($num % 2 == 0) {
    echo $num, '是一个偶数';
} else {
    echo $num, '不是一个偶数';
}
?>

运行结果如下:

11不是一个偶数

3、if...elseif语句

在条件控制语句中,有时会出现多余两种的选择,可以使用if...elseif语句,它的语法格式如下:

if(<条件1>)  
{  
    <语句块1>  
}  
elseif(<条件2>)  
{  
    <语句块2>  
}  
elseif(<条件n>)  
{  
    <语句块n>  
}

如下面的考试分数评级,代码如下:

$score = 55;  
if($score>=90){  
    echo '优秀';  
}elseif($score>=80 && $score<90){  
    echo '好';  
}elseif($score>=70 && $score<80){  
    echo '良';  
}elseif($score>=60 && $score<70){  
    echo '及格';  
}else{  
    echo '不及格';  
}

输出结果如下:

不及格

4、switch 语句

switch 语句的结构给出不同情况下可能执行的程序块,条件满足哪个条件块,就执行哪个。它的语法格式为:

switch (条件判断语句)
{
case 判断结果a:
执行语句1;
break;
case 判断结果b:
执行语句2;
break;
......
default:
执行语句n;
}

"条件判断语句"的结果符合哪个可能的"判断结果",就执行其对应的"执行语句"。如果都不符合,则执行default对应的默认"执行语句n"。

我们用一个示例:

<?php
switch(date("D")){
    case "Mon":
        echo "今天星期一<br/>";
        break;
    case "Tue":
        echo "今天星期二<br/>";
        break;
    case "Wed":
        echo "今天星期三<br/>";
        break;
    case "Thu":
        echo "今天星期四<br/>";
        break;
    case "Fri":
        echo "今天星期五<br/>";
        break;
	case "Sat":
        echo "今天星期六<br/>";
        break;
    default:
        echo "今天星期天";
}
?>

运行结果如下:

今天星期六

温馨提示:运行上面的代码,每个人运行的时间不同,显示的结果不同,本文发布的时间是:2023年8月5日 星期六。

到此为止,if语句、if...else语句、if...elseif语句和switch语句就讲解完毕了。

相关推荐
秃头佛爷7 分钟前
Python学习大纲总结及注意事项
开发语言·python·学习
待磨的钝刨8 分钟前
【格式化查看JSON文件】coco的json文件内容都在一行如何按照json格式查看
开发语言·javascript·json
XiaoLeisj2 小时前
【JavaEE初阶 — 多线程】单例模式 & 指令重排序问题
java·开发语言·java-ee
励志成为嵌入式工程师3 小时前
c语言简单编程练习9
c语言·开发语言·算法·vim
捕鲸叉4 小时前
创建线程时传递参数给线程
开发语言·c++·算法
A charmer4 小时前
【C++】vector 类深度解析:探索动态数组的奥秘
开发语言·c++·算法
Peter_chq4 小时前
【操作系统】基于环形队列的生产消费模型
linux·c语言·开发语言·c++·后端
记录成长java5 小时前
ServletContext,Cookie,HttpSession的使用
java·开发语言·servlet
前端青山5 小时前
Node.js-增强 API 安全性和性能优化
开发语言·前端·javascript·性能优化·前端框架·node.js
睡觉谁叫~~~5 小时前
一文解秘Rust如何与Java互操作
java·开发语言·后端·rust