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语句就讲解完毕了。

相关推荐
Thomas_YXQ28 分钟前
Unity3D IK解算器技术分析
开发语言·搜索引擎·unity·全文检索·unity3d·lucene
liuweidong08021 小时前
【Pandas】pandas DataFrame rsub
开发语言·python·pandas
whoarethenext1 小时前
c++的jsoncpp使用
开发语言·c++·jsoncpp
niuTaylor1 小时前
Linux驱动开发快速上手指南:从理论到实战
linux·运维·开发语言·驱动开发·c#
CH3_CH2_CHO1 小时前
不吃【Numpy】版
开发语言·python·numpy
苦学编程的谢1 小时前
再谈String
java·开发语言
神奇小永哥2 小时前
那些年踩过的坑之Arrays.asList
java·开发语言
军训猫猫头2 小时前
89.WPF 中实现便捷的数字输入框:DecimalUpDown 控件的使用 WPF例子 C#例子.
开发语言·c#·wpf
Light602 小时前
智启未来:深度解析Python Transformers库及其应用场景
开发语言·python·深度学习·自然语言处理·预训练模型·transformers库 |·|应用场景
一个天蝎座 白勺 程序猿2 小时前
Python爬虫(5)静态页面抓取实战:requests库请求头配置与反反爬策略详解
开发语言·爬虫·python