if判断语句
判断语句用于调整程序语句的执行顺序,从而控制程序运行的流程。PHP 判断语句一共有两种,分别为:if 语句、switch 语句。
if 语句的语法结构,可以分为三种情况:if 结构、if-else 结构、elseif 结构。
if 结构语法格式:
if(条件){
相关代码;
}
如果 “条件” 成立时,就执行 {} 花括号中的 “相关代码”。
<?phpheader("content-type:text/html;charset=utf-8");$age = 19;if($age >= 18){echo "你已成年";}
代码讲解
1、判断$age变量值
if($age >= 18) {
echo “你已成年”;
}
如果 $age 变量值大于等于 18 时,将向浏览器页面输出 “你已成年”。
if:代表当前是判断语句
$age>=18:判断的条件
{}:左右花括号,代表判断的开始与结束
echo “你已成年”:判断条件成立时,将要执行的代码
if-else 结构语法格式:
if(条件){
相关代码1;
}
else{
相关代码2;
}
如果 “条件” 成立时,就执行 “相关代码1”;否则就执行 “相关代码2”。
<?phpheader("content-type:text/html;charset=utf-8");$a = 10;if($a > 20){echo "a 大于 20";}else{echo "a 不大于 20";}
代码讲解
1、判断$a变量值
if($a > 20){
echo “a 大于 20”;
}
else{
echo “a 不大于 20”;
}
如果 $a 变量值大于 20 时,则输出 “a 大于 20”;否则就输出 “a 不大于 20”。
else if结构语法格式
if(条件1){
相关代码1;
}
elseif(条件2){
相关代码2;
}
……
elseif(条件n){
相关代码n;
}
else{
相关代码n+1;
}
如果 “条件1” 成立,则执行 “相关代码1” ;否则如果 “条件2” 成立,则执行 “相关代码2” ,往后以此类推。另外,如果所有判断条件都不成立,则执行 else 的相关代码。
<?phpheader("content-type:text/html;charset=utf-8");$a = 30;if($a < 20){echo "a 小于 20";}elseif($a > 20){echo "a 大于 20";}else{echo "a 等于 20";}
代码讲解
1、判断 $a 变量值
if($a < 20){
echo “a 小于 20”;
}
elseif($a > 20){
echo “a 大于 20”;
}
else{
echo “a 等于 20”;
}
如果 $a 变量值小于 20 时,则输出 “a小于 20” ;否则如果 $a 变量值大于 20 时,则输出 “a大于20” ;否则输出 “a等于20”。
swith判断语句
switch 语句适用于根据多分支条件执行不同的动作。使用 switch 语句能使代码变得简洁,提高执行效率。
switch 语句语法格式:
switch(表达式){
case 结果1:
相关代码1;
break;
case 结果2:
相关代码2;
break;
……
case 结果n:
相关代码n;
break;
default:
默认代码;
}
如果 “表达式” 的值等于 “结果1” ,则执行 “相关代码1”;
否则如果 “表达式” 的值等于 “结果2” ,则执行 ”相关代码2” ,往后以此类推。
另外,如果 ”表达式” 的值与所有 case 的值都不能匹配,则执行 default 的 “默认代码” 。
<?phpheader("content-type:text/html;charset=utf-8");$age = 20;switch ($age){case 1:echo "出场亮相";break;case 10:echo "天天向上";break;case 20:echo "远大理想";break;case 30:echo "基本定向";break;default:echo "未知";}
代码讲解
1、判断 $age 变量值
switch ($age){
case 1:
echo “出场亮相”;
break;
case 10:
echo “天天向上”;
break;
case 20:
echo “远大理想”;
break;
case 30:
echo “基本定向”;
break;
default:
echo “未知”;
}
如果 $age 变量值等于 1,则输出 “出场亮相”;
否则如果 $age 变量值等于 10,则输出 “天天向上”;
否则如果 $age 变量值等于 20,则输出 “远大理想”;
否则如果 $age 变量值等于 30,则输出 “基本定向”;
如果 $age 变量值与所有 case 的值都不能匹配,则输出 “未知”。
运算符
运算符是可以通过给出的一或多个值(用编程行话来说,表达式)来产生另一个值(因而整个结构成为一个表达式)的东西。
运算符可按照其能接受几个值来分组。
一元运算符只能接受一个值,例如 !(逻辑取反运算符)或 ++(递增运算符)。
二元运算符可接受两个值,例如熟悉的算术运算符 +(加)和 -(减),大多数 PHP 运算符都是这种。
最后是唯一的三元运算符 ? : ,可接受三个值;通常就简单称之为“三元运算符”(尽管称之为条件运算符可能更合适)。
1.算数运算符
算术运算符是用来进行四则运算的符号。
PHP算术运算符:
| 运算符 | 说明 | 示例 |
|---|---|---|
| + | 加法 | $a + $b |
| - | 负数、减法 | -$a、$a-$b |
| * | 乘法 | $a * $b |
| / | 除法 | $a / $b |
| % | 求模(求余数) | $a % $b |
<?phpheader("content-type:text/html;charset=utf-8");$a = 10;$b = 7;$result = $a + $b;echo "加法:{$result}<br/><br/>";$result = $a - $b;echo "减法:{$result}<br/><br/>";$result = $a * $b;echo "乘法:{$result}<br/><br/>";$result = $a / $b;echo "除法:{$result}<br/><br/>";$result = $a % $b;echo "求模:{$result}<br/><br/>";
代码讲解
1、加法
$result = $a + $b;
求 $a、$b 两个变量之和。
2、减法
$result = $a - $b;
求 $a、$b 两个变量之差。
3、乘法
$result = $a $b;
求 $a、$b 两个变量之积。
4、除法
$result = $a / $b;
求 $a、$b 两个变量之商。
*5、求模
$result = $a % $b;
求 $a 除以 $b 的余数。
除法运算符总是返回浮点数。
只有在下列情况例外:两个操作数都是整数(或字符串转换成的整数)并且正好能整除,这时它返回一个整数。 整数除法可参考 intdiv()](https://www.php.net/manual/zh/function.intdiv.php))。
取模运算符的操作数在运算之前都会转换成 int 。 浮点数取模可参考 fmod()](https://www.php.net/manual/zh/function.fmod.php))。
取模运算符 % 的结果和被除数的符号(正负号)相同。即 $a % $b 的结果和 $a 的符号相同
2.比较运算符
比较运算符用于比较两个变量值之间的大小关系。
PHP 比较运算符:
| 运算符 | 说明 | 示例 |
|---|---|---|
| < | 小于 | $a<$b,若$a小于$b,则返回true |
| <= | 小于等于 | $a<=$b,若$a小于等于$b,则返回true |
| > | 大于 | $a>$b,若$a大于$b,则返回true |
| >= | 大于等于 | $a>=$b,若$a大于等于$b,则返回true |
| == | 等于 | $a==$b,若$a等于$b,则返回true |
| != | 不等于 | $a!=$b,若$a不等于$b,则返回true |
| === | 全等 | $a===$b,若$a等于$b,且类型不同,则返回true |
| !== | 非全等 | $a!==$b,若$a不等于$b,且类型不同,则返回true |
| <=> | 组合比较符 | $a<=>$b,若$a小于$b,则返回-1;若$a等于$b,则返回0;若$a大于$b,则返回1 |
| ?? | 空合并符 | $a??$b??$c,返回从左到右的第一个不为NULL的变量值 |
<?phpheader("content-type:text/html;charset=utf-8");$a = 30;if($a < 20){echo "a 小于 20";}elseif($a > 20){echo "a 大于 20";}else{echo "a 等于 20";}
代码讲解
1、判断 $a 变量值
if($a < 20){
echo “a 小于 20”;
}
elseif($a > 20){
echo “a 大于 20”;
}
else{
echo “a 等于 20”;
}
如果 $a 变量值小于 20 时,则输出 “a小于 20” ;否则如果 $a 变量值大于 20 时,则输出 “a大于20” ;否则输出 “a等于20”。
3.逻辑运算符
逻辑运算符用于把语句连接成更加复杂的语句。
PHP逻辑运算符:
| 运算符 | 说明 | 示例 |
|---|---|---|
| && | 逻辑与 | $a && $b,当$a和$b都为true时,返回结果就为true |
| || | 逻辑或 | $a || $b,当$a和$b有一个为true时,返回结果就为true |
| ! | 逻辑非 | !$a,当$a为true时,!$a返回结果就为false |
<?phpheader("content-type:text/html;charset=utf-8");$age = 10;$sex = "男";if($age < 20 && $sex=="男"){echo "小男孩";}else{echo "未知";}
代码讲解
1、判断 $age、$sex 变量值
if($age < 20 && $sex==”男”){
echo “小男孩”;
}
else{
echo “未知”;
}
如果 $age 小于 20,并且 $sex 等于 “男” ,则输出 “小男孩” ;否则输出“未知”。
4.连接运算符
连接运算符用于将两个或两个以上的字符串进行连接,组合成一个新的字符串。
PHP连接运算符:
| 运算符 | 说明 | 示例 |
|---|---|---|
| . | 连接运算符 | $a.$b,将$a和$b连接成一个全新的字符串 |
<?phpheader("content-type:text/html;charset=utf-8");$userName = "小明";$age = 15;echo $userName."的年龄为:".$age;
代码讲解
1、连接字符串
echo $userName.”的年龄为:”.$age;
通过连接运算符,将多个变量连接为一个全新的字符串。
5.赋值运算符
赋值运算符用于实现变量的赋值操作。
PHP赋值运算符:
| 运算符 | 说明 | 示例 |
|---|---|---|
| = | 赋值 | $a=10,将数据10赋给$a变量 |
| += | 加 | $a += 3,等价于$a = $a + 3 |
| -= | 减 | $a -= 3,等价于$a = $a – 3 |
| *= | 乘 | $a = 3,等价于$a = $a 3 |
| /= | 除 | $a /= 3,等价于$a = $a / 3 |
| %= | 求模 | $a %= 3,等价于$a = $a % 3 |
| .= | 连接 | $a .= $b,等价于$a = $a . $b |
<?phpheader("content-type:text/html;charset=utf-8");$a = 10;$a += 20;echo "a变量的值为:{$a}";
代码讲解
1、变量赋值
$a = 10;
给 $a 变量赋值,值为 10。
2、+= 运算符
$a += 20;
通过 “+=” 运算符给 $a 变量赋值,使 $a 变量值在原有值基础上加 20。
6.递增递减运算符
递增递减运算符用于控制变量在原有值基础上加 1 或减 1。
PHP 递增递减运算符:
| 运算符 | 说明 | 示例 |
|---|---|---|
| ++$a | 前置递增 | $a = 5; echo ++$a; 表示变量$a先加1,然后再返回结果值,显示结果为6 |
| —$a | 前置递减 | $a = 5; echo —$a; 表示变量$a先减1,然后再返回结果值,显示结果为4 |
| $a++ | 后置递增 | $a = 5; echo $a++; 表示先返回变量$a的值,然后再加1,显示结果为5 |
| $a— | 后置递减 | $a = 5; echo $a—; 表示先返回变量$a的值,然后再减1,显示结果为5 |
<?phpheader("content-type:text/html;charset=utf-8");$age = 10;echo ++$age;
代码讲解
1、前置递增
echo ++$age;
先将 $age 变量值加 1,然后再输出,显示结果为 11。
7.三元运算符
三元运算符用于实现简单的逻辑判断。
语法格式:
表达式1 ? 表达式2 : 表达式3
如果 “表达式1” 成立,则执行 “表达式2” ,否则执行 “表达式3”。
<?phpheader("content-type:text/html;charset=utf-8");$age = 15;$msg = $age>=18?"成年人":"未成年";echo $msg;
代码讲解
1、判断并赋值
$msg = $age>=18?”成年人”:”未成年”;
如果 $age 大于等 18,则 $msg 等于 “成年人” ,否则 $msg等于 “未成年”。
8.错误抑制符
错误抑制符“@”,用于忽略表达式的错误信息。
语法格式:
@表达式
<?phpheader("content-type:text/html;charset=utf-8");$a = @(5/0);echo $a;
代码讲解
1、忽略错误信息
$a = @(5/0);
“5/0” 会产生一个算术错误,前边加上 “@” ,用于忽略此句代码的错误信息。
PHP运算符优先级:
| 优先级由高到低 | 运算符 |
|---|---|
| 1 | ++、—、@ |
| 2 | ! |
| 3 | *、/、% |
| 4 | +、- |
| 5 | <、<=、>、>= |
| 6 | ==、!=、===、!== |
| 7 | &&、|| |
| 8 | ??、?: |
| 9 | =、+=、-=、*=、/=、%=、.= |
isset()函数
isset() 函数用于检测变量是否有值,而并非 NULL。
语法格式:
bool isset($变量 , $变量…)
<?phpheader("content-type:text/html;charset=utf-8");$userName = "张小明";if(isset($userName)){echo "姓名为:{$userName}";}else{echo "userName变量没有值";}
代码讲解
1、检测 $userName 变量
if(isset($userName)){
echo “姓名为:{$userName}”;
}
else{
echo “userName变量没有值”;
}
检测 $userName 变量是否有值,如果有值,则将 $userName 变量值输出,否则输出 “userName变量没有值”。
empty()函数
empty() 函数用于检查一个变量是否为空。
语法格式:
bool empty($变量)
<?phpheader("content-type:text/html;charset=utf-8");$userName = "张小明";if(empty($userName)){echo "userName变量没有值";}else{echo "姓名为:{$userName}";}
代码讲解
1、检查 $userName 变量
if(empty($userName)){
echo “userName变量没有值”;
}
else{
echo “姓名为:{$userName}”;
}
检查 $userName 变量是否为空,如果为空,则输出 “userName变量没有值” ;否则将 $userName 变量值输出。
