专栏首页全能大脸猫PHP丨PHP基础知识之条件语IF判断「理论篇」
原创

PHP丨PHP基础知识之条件语IF判断「理论篇」

f语句是指编程语言(包括c语言、C#、VB、java、php、汇编语言等)中用来判定所给定的条件是否满足,根据判定的结果(真或假)决定执行给出的两种操作之一。

if语句概述

if语句是指编程语言(包括c语言、C++、C#、java、php、VB、汇编语言等)中用来判定所给定的条件是否满足,根据判定的结果(真或假)决定执行给出的两种操作之一。if的返回值为真或假,可以用bool型变量进行存储,占用一字节。

条件语句作用

以编写脚本为例,在编写脚本中,条件语句是非常有用的。与其按照脚本内容执行每一行代码,不如只有当特定条件满足时,才执行脚本中的某些代码。甚至可将单个条件扩展为条件语句的集合,用于决定某些代码是否执行。

使用条件语句,可以告诉JavaScript做到像下面的事情:

·如果变量youmame等于Jonh,那么将“hello to John”输出到页面。否则输出“hello to Unknow Surfer”并将内容加粗。

·如果变量mycar等于Corvette或Mustang,那么向浏览器发出警告“Cool car”。如果变量mycar等于Covette,并且变量yourname等于Marty,那么向浏览器发出警告“Marty is cool and drives a cool car”。否则,向浏览者发出警告“Unknown Surfer drives a car of some sort”。

我并不驾驶Corvette或者Mustang,所以请将我从很时髦的人群中排除。而这些例子显示了如何在执行操作之前通过检查某些条件,达到更多的目的。这些类型的语句在脚本中称为控制流。

if语句一般形式

if语句的一般形式如下:

if(表达式)语句1

[else语句2]

if语句中的“表达式”可以是关系表达式、逻辑表达式,甚至是数值表达式。其中最直观、最容易理解的是关系表达式。所谓关系表达式就是两个数值进行比较的式子。

空悬else

问题描述

if-else 语句引入了一种二义性问题称为空悬else (dangling-else) 问题,这种问题出现在当if 子句多于else 子句时。问题是这些else 子句分别和哪一个if 子句匹配。例如:

if($str <= $arr[1])

if($str == $arr[1]) $num++;

else{

$str = $arr[1];

$num = 1;

}

程序的缩进形式表明程序员相信else 应该与最外面的if 子句匹配,然而在中空悬else 二义性由以下规定来解决:else 子句与最后出现的未被匹配的if 子句相匹配

解决方式

要想改变这种缺省的空悬else 匹配效果一种方法是把后来出现的if 放在复合语句中:

if($str <= $arr[1]){

if($str == $arr[1]) $num++;

}else{

$str = $arr[1];

$num = 1;

}

编码风格建议

总是使用复合语句括号以避免在以后修改代码时可能出现的混淆或错误。

比较运算符

equ - 等于

neq - 不等于

lss - 小于

leq - 小于或等于

gtr - 大于

geq - 大于或等于

文章收集与网络,辛苦收集转载请备注出处大脸猫博客!

PHP丨PHP基础知识之流程控制for循环「理论篇」

PHP丨PHP基础知识之流程控制WHILE循环「理论篇」

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 变量类型测试函数的使用:八、剩余函数的使用方法

    讲完PHP变量类型测试函数【is_resource】的用法,今天来讲讲PHP变量类型测试函数【is_null、is_scalar、is_numeric、is_c...

    大脸猫
  • PHP变量类型测试函数的使用:五、is_array的用法

    刚讲完PHP变量类型测试函数【is_string】的用法,今天来讲讲PHP变量类型测试函数【is_array】的用法。

    大脸猫
  • PHP变量类型测试函数的使用:三、is_float的用法

    前几天刚讲完PHP变量类型测试函数【is_int】的用法,今天来讲讲PHP变量类型测试函数【is_float】的用法。

    大脸猫
  • Java入门 - 语言基础 - 10.条件语句

    原文地址:http://www.work100.net/training/java-if-else.html

    光束云
  • Scala IF…ELSE 语句(六)

    Scala IF...ELSE 语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。

    王知无
  • day01 python基础

    py3study
  • Go 语言基础入门教程 —— 流程控制篇:条件语句

    流程控制主要用于设定计算执行的次序,建立程序的逻辑结构。Go 语言的流程控制和 PHP 类似,支持如下的几种流程控制语句:

    学院君
  • 5寒假专辑:三、表达式、选择结构​

    如 9>8这个关系表达式是真的,所以9>8这个表达式的数值就是1。x<y<z是真还是假?带入为1<0<2,从数学的角度出发肯定是错的,但是如果是C语言那么就是正...

    用户6755376
  • 包教包会!7段代码带你玩转Python条件语句(附代码)

    [ 导 读 ]条件语句通过一个或多个布尔表达式的执行结果(真值或假值)决定下一步的执行方向。所谓布尔表达式,即对某个对象进行布尔运算,产生一个bool值。条件语...

    数据派THU
  • 计算机科学中的数学(一)

    数学函数三要素:定义域、对应法则、值域。 对应于编程语言中的函数:形式参数、函数主体(逻辑、计算规则)、返回值。

    城市中的游牧民族

扫码关注云+社区

领取腾讯云代金券