php框架 wc if_PHP if else语句

无论在何种编程语言中,流程控制都是很重要的内容。由于 PHP 的大部分语法都继承了C语言的特点,因此在流程控制方面,PHP 有着和C语言类似的流程控制。

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

1. if 语句

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

if (判断条件) {

语句块;

}

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

if (判断条件)

一条语句;

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

a39433e627a94dac0f48fca7a73dbeee.gif

图:if 语句流程图

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

$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 语句的执行流程如下图所示:

5de3fdd76f71faaf558d2107edcc833b.gif

图:if...else 语句流程图

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

$num = rand(1,31); //生成一个 1~31 之间的随机数

if ($num % 2 == 0) {

echo '$num ='.$num.', 是偶数!';

} else {

echo '$num ='.$num.', 是奇数!';

}

?>

运行结果如下:

$num =27, 是奇数!

3. if...else if...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 语句的执行流程如下图所示:

16d7f57edc50e59f1dfab832936c8e2c.gif

图:if...else if...else 语句流程图

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

$score = 89;

if ($score > 90) {

echo '成绩的级别为:优!';

} else if ($score > 70) {

echo '成绩的级别为:良!';

} else if ($score > 60) {

echo '成绩的级别为:中!';

} else {

echo '成绩的级别为:差!';

}

?>

运行结果如下:

成绩的级别为:良!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/405930.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

无线路由与无线AP有什么不同

无线路由与无线AP有什么不同 无线网络从07年开始就进入高速发展的时期,无论是企业还是家庭,在组建网络的时候,大部分都会选择架设无线网络。但是无线网络因为其多种协议、多种功能,产品之间也会有不小的差别,就像很多人…

iOS - 判断用户是否允许推送通知(iOS7/iOS8)

(iOS8中用户开启的推送通知类型对应的是UIUserNotificationType(下边代码中UIUserNotificationSettings的types属性的类型),iOS7对应的是UIRemoteNotificationType) 此处以iOS8的UIUserNotificationType为例&#xff0…

第一课 PE格式

From: http://bbs.pediy.com/showpost.php?p138590&postcount2 要想学脱壳,第一步就得掌握PE格式,PE是Portable Executable File Format(可移植的执行体)简写,它是目前Windows平台上的主流可执行文件格式。 Micr…

React开发(182):ant design table中 带线框的列表

ReactDOM.render(<Tablecolumns{columns}dataSource{data}borderedtitle{() > Header}footer{() > Footer}/>,mountNode, );

Linux DHCP Server 配置给FIT AP 使用的option

Linux DHCP Server 配置给FIT AP 使用的option 2010-09-17 09:45:52标签&#xff1a;Linux DHCP Server option FIT    [推送到技术圈] 版权声明&#xff1a;原创作品&#xff0c;允许转载&#xff0c;转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将…

Claims 认证详解(1)

很多时候&#xff0c;我们进行应用程序之间的交互。比如&#xff0c;一个员工登录了门户网站后&#xff0c;需要访问进销存系统、CRM系统&#xff0c;如果不进行特殊处理&#xff0c;就需要多次输入用户名和密码。用过SharePoint的朋友&#xff0c;可能知道有个“单点登录”的东…

php什么设置前端代码,代码编辑器与PHPSTUDY的安装与配置过程(前端第一课)

前端第一课&#xff1a;编辑器与PHPSTUDY的安装与配置过程编辑器安装过程1.Visual Studio Code 官网下载软件&#xff0c;解压下载文件&#xff0c;打开安装程序安装至你的计算机。2.安装“Chinese(Simplified)Language Pack for Visual Studio Code” 插件&#xff0c;并重启v…

重学java基础第二十课:环境配置和第一个helloWorld

大家好 我是歌谣 闲来无事做 不如敲代码 今天大概说如何编译一个简单的helloWorld小案例 安装环境的配置 1首先进入jdk的官网 找到对应的jdk版本 这边一window为例 2接下来--右键--计算机--属性--进行高级系统设置 3在用户变量里面配置 JAVA_HOME:G:\java CLASSPATH:.;%JAV…

vim QuickFix 窗口

From: http://hi.baidu.com/bali5/blog/item/82f87c0ab670a136b0351d4f.html 在上一节的图10中大家可以看到在窗口下面有一个显示查询结果的窗口, 这个窗口中列出了查询命令的查询结果, 用户可以从这个窗口中选择每个结果进行查看, 这个窗口叫"QuickFix"窗口, 以前也…

谷歌笔试题(Google十二岁生日晚)

2010-9-27日是Google十二岁生日&#xff0c;就在生日当天&#xff0c;Google进行了一场宣讲会加笔试。Google果然不一般&#xff0c;宣讲会门外都站满了人&#xff0c;也可见竞争之激烈&#xff0c;据说只需要40个人参加面试&#xff0c;而笔试的人有1000之多&#xff0c;汗………

RHE5服务器配置——Samba服务器

Samba的核心 Samba的核心是两个守护进程&#xff0c;即smbd和nmbd。服务器启动到停止期间持续运行&#xff0c;smba监听139TCP端口&#xff1b;nmbd监听137和 138UDP端口。smbd和nmbd使用的全部配置信息保存在smb.conf文件中&#xff0c;smb.conf向smbd和nmbd两个守护进程说明输…

PHP检查微信域名屏蔽接口,微信域名检测API接口,实时查询域名是否被微信拦截...

微信域名检测API接口的应用场景&#xff1a;由于微信对外部链接内容规范比较严格&#xff0c;所以可能一不小心就会被判定为是违反内容规范的&#xff0c;或被同行恶意举报投诉之类的。那么此时就要用到微信域名检测接口&#xff0c;实时检测域名的状态&#xff0c;实时查询域名…

NGINX + TOMCAT7 + MEMCACHED 实现SESSION 共享

原文地址&#xff1a; http://my.oschina.net/u/1791256/blog/283064 TOMCAT7.0 NGINX MEMCACHED memcached-session-manager 实现SESSION共享 http://blog.csdn.net/nerissa/article/details/18961361 ; //参考博客 http://pan.baidu.com/s/1pJlZ0mB //相关包下载&#…

实验二十四、OSPF 在NBMA 环境中点到点的配置

实验二十四、OSPF 在NBMA 环境中点到点的配置 一、 实验目的 1. 掌握NBMA 环境中点到点的配置 2. 理解NBMA 环境中点到点网络类型的意义 二、 应用环境 在帧中继的网络中&#xff0c;OSPF 的路由更新不能正常进行&#xff0c;需要配置点到点的网络类型保证OSPF 协议的正常运行…

ad从2003升级到2008总结

一、升级前要在2003域控运行adprep命令来扩展2003森林架构和域架构 &#xff08;adprep命令在2008 r2安装光盘的support\adprep目录。需要将其复制到2003域控中&#xff09; 源2003 server为64位&#xff1a;adprep.exe 源2003 server为32位&#xff1a;adprep32.exe 转载于:h…