php基础(9)_程序流程控制语句之if分支语句【一】
流程控制定义:流程控制(也称为控制流程)是计算机运算领域的用语,意指在程序运行时,个别的指令(或是陈述、子程序)运行或求值的顺序。流程控制语句即用来实现对程序流程的选择、循环、转向和返回等进行控制。
程序流程控制语句结构分为三大类:
顺序结构:代码从上往下,顺序执行。(代码执行的最基本结构)
选择结构(又称分支结构/判断结构):给定一个条件,同时有多种可执行代码(块),然后会根据条件执行某一段代码
循环结构:在某个条件控制范围内,指定的代码(块)可以重复执行
顺序结构:最基本结构,所有代码默认都是从上往下依次执行。
选择结构:在PHP中,选择结构(分支结构)语句主要有两种:if分支语句和switch分支语句。
if分支语句 if:如果的意思,给定一个条件,同时为该条件设置一种或多种情况,然后通过条件判断来选择执行不同的代码。原则上if语句适合所有条件判断:
if分支语句的第一种格式,适合做一种情况的判断:
if(条件表达式)
{
条件为 true 时执行的代码块;
}
流程图如下:
if分支语句的第二种格式,适合做二种情况的判断:
if(条件表达式)
{
条件为true时执行的代码块1;
}
else
{
条件为false时执行的代码块2;
}
流程图如下:
使用场景:
当满足这个条件时,执行某个操作,当不满足这个条件时,执行另一个操作(和if型区别是如果不满足条件一个是执行另一个操作,而一个是什么都不做)
if分支语句的第三种格式,适合做多种情况的判断:
if (条件判断1)
{
条件1为true时执行的代码块1;
}
elseif(条件判断2)
{
条件2为true时执行的代码块2;
}
...
elseif(条件判断n)
{
条件n为true时执行的代码块n;
}
else
{
以上条件为false时执行的代码块n+1;
}
流程图如下:
此外if分支语句还可以嵌套:
if(条件1)
{
if(条件2)
{
条件1和条件2为true时执行的代码块
}
else
{
条件1为true条件2为false时执行的代码块
}
}
else
{
条件1为false时执行的代码块;
}
if elseif else 与if 嵌套的区别:
1、嵌套if分支,是当外面条件不满足时,里面的if不会执行
2、而if elseif else,是当第一个条件不满足时,会判断第二个条件
注意:
1、如果条件特别多才采用复合if分支形式
①、如果条件比较单一(同一个条件),会采用elseif复合分支方式
②、如果判断条件不一致,建议使用嵌套if分支(不宜有太多层嵌套,影响代码美观)
2、在使用if分支语句时还应注意以下两点:
①、在 if 分支语句中,判断条件必须用括号括起来。
②、多语句块必须由{ }包围,单一语句可以不用{ },if分支语句嵌套时,要注意if和else的配对问题else总是与它前面最近的if配对