if判断
if($age >= 18){
echo "你已成年";
}
if($a > 20){
echo "a 大于 20";
}
else{
echo "a 不大于 20";
}
if($a < 20){
echo "a 小于 20";
}
elseif($a > 20){
echo "a 大于 20";
}
else{
echo "a 等于 20";
}
switch判断语句
<?php
header("content-type:text/html;charset=utf-8");
$age = 20;
switch ($age){
case 1:// $age 变量值等于 1,则输出 “出场亮相”;
echo "出场亮相";
break;
case 10: //$age 变量值等于 10,则输出 “天天向上”;
echo "天天向上";
break;
case 20:
echo "远大理想";
break;
case 30:
echo "基本定向";
break;
default:
echo "未知";
}
运算符
运算符可以按照其能接受几个值来分组:
一元运算符:只能接受一个值,例如!(逻辑取反运算符)或者++(增值运算符)。
二元运算符:可接受两个值,例如熟悉的算术运算符+(加)和-(减),大多数PHP运算符都是这种。
三元运算符:?: 可接受三个值,通常就简单称之为“三元运算符”(条件运算符)。
算术运算符,比较运算符,逻辑运算符,连接运算符,赋值运算符,递增递减运算符,三元运算符,错误抑制符
连接运算符
运算符 | 说明 | 示例 |
---|---|---|
. | 连接运算符 | $a.$b,将$a和$b连接成一个全新的字符串 |
赋值运算符
运算符 | 说明 | 示例 |
---|---|---|
= | 赋值 | $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 |
三元运算符(条件运算符)
//表达式1 ? 表达式2 : 表达式3
$msg = $age>=18?"成年人":"未成年";
因为是运算符,所以是 cpu 直接加载运算的, 执行效率快. 简单的判断应用较多
if 结构,是语言中的一种结构语法,由解释器执行,速度慢,, if 更直观,适用复杂结构的条件
PHP运算符优先级
优先级由高到低 | 运算符 |
---|---|
1 | ++、—、@ |
2 | ! |
3 | *、/、% |
4 | +、- |
5 | <、<=、>、>= |
6 | ==、!=、===、!== |
7 | &&、|| |
8 | ??、?: |
9 | =、+=、-=、*=、/=、%=、.= |
算数运算符
例子 | 名称 | 结果 |
---|---|---|
+$a | 标识 | 根据情况将 $a 转化为 int 或 float。 |
-$a | 取反 | $a 的负值。 |
$a + $b | 加法 | $a 和 $b 的和。 |
$a - $b | 减法 | $a 和 $b 的差。 |
$a * $b | 乘法 | $a 和 $b 的积。 |
$a / $b | 除法 | $a 除以 $b 的商。 |
$a % $b | 取模 | $a 除以 $b 的余数。 |
$a ** $b | 求幂 | $a 的 $b次方的值。 |
除法运算符总是返回浮点数。
只有下列情况例外:两个操作数都是整数(或者字符串换成的整数)并且正好能整除,这时他返回一个整数。整数可以参考intdiv()
取模运算符的操作数在运算之前都会转换成int。浮点数取模可参考fmod().
取模运算符%的结果和被除数的符号(正负号)相同。既$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 | 大于等于 | true,如果 $a 大于或者等于 $b。 |
$a <=> $b | 太空船运算符 (组合比较符) |
当$a小于、等于、大于 $b时 分别返回一个小于、等于、大于0的 int 值 |
注意:
== 和 !=只比较值,不比较类型, 比如: 1 == “1” 结果为true
=== 和 !== 即比较值,也比较类型, 1=== “1”结果为false
错误抵制符
运算优先级
常用运算符优先级 | 优先级由高到低 | 运算符 | | —- | —- | | 1 | ++、—、@ | | 2 | ! | | 3 | 、/、%, ** | | 4 | +、- | | 5 | <、<=、>、>= | | 6 | ==、!=、===、!== | | 7 | &&、|| | | 8 | ??、?: | | 9 | =、+=、-=、=、/=、%=、.= |
完整运算符优先级 | 结合方向 | 运算符 | 附加信息 | | —- | —- | —- | | 不适用 | clonenew | clone和 new | | 右 | | 算术运算符 | | 不适用 | +-++—~(int)(float)(string)(array)(object)(bool)@ | 算术(一元 + 和 -), 递增/递减
, 按位, 类型转换和 错误控制 | | 左 | instanceof | 类型 | | 不适用 | ! | 逻辑运算符 | | 左 | /% | 算术运算符 | | 左 | +-. | 算数(二元 + 和 -), array和 string(. PHP 8.0.0 前可用) | | 左 | <<>> | 位运算符 | | 左 | . | string(PHP 8.0.0 起可用) | | 无 | <<=>>= | 比较运算符 | | 无 | ==!====!==<><=> | 比较运算符 | | 左 | & | 位运算符
和 引用 | | 左 | ^ | 位运算符 | | 左 | | | 位运算符 | | 左 | && | 逻辑运算符 | | 左 | || | 逻辑运算符 | | 右 | ?? | null 合并运算符 | | 无关联 | ? : | 三元运算符(PHP 8.0.0 之前左联) | | 右 | =+=-===/=.=%=&=|=^=<<=>>=??= | 赋值运算符 | | 不适用 | yield from | yield from | | 不适用 | yield | yield | | 不适用 | print | print | | 左 | and | 逻辑运算符 | | 左 | xor | 逻辑运算符 | | 左 | or | 逻辑运算符 |