在php中,三个等号“===”是全等比较运算符,用于比较两个操作数的值是否相等;该运算符是进行给定变量或值之间的严格比较,会比较并查看两个变量(表达式或常量)是否值相等且具有相同的数据类型,即两者都是字符串或两者都是整数等等。如果两个变量(表达式或常量)包含相同的值和相同的数据类型,则此运算符返回true,否则返回false。
本教程操作环境:windows7系统、PHP8版、DELL G3电脑
在php中,三个等号“===
”是全等比较运算符,又称恒等式运算符。
运算符 | 名称 | 描述 |
---|---|---|
=== | 全等 | 比较两个操作数的值是否相等,同时检测它们的类型是否相同 |
恒等式(===
)运算符是进行给定变量或值之间的严格比较;它比较,不仅会对运算符两边表达式的值进行比较,而且还会对数据类型进行比较,只有两边的值和数据类型都相等时,运算结果才是 TRUE。
-
如果两个变量(表达式或常量)包含相同的值和相同的数据类型,则此运算符返回true,否则返回false。
<?php header("content-type:text/html;charset=utf-8"); // 给变量赋整数值 $x = 999; echo '$x='.$x."<br>"; // 给变量赋字符串值 $y = '999'; echo '$y='.$y."<br>"; //比较$x 和$y if ($x === $y) echo '$x和$y相等'; else echo '$x和$y不相等'; ?>
登录后复制
说明:在上面的例子中,$ x和$ y的值相等但数据类型不同,因而返回false,执行else部分。
对比:等式(==)运算符
等式(==)运算符是比较、并测试左边的变量(表达式或常量)是否与右边的变量(表达式或常量)具有相同的值;该运算符进行的比较是松散的。
如果两个值相同(它只比较变量的值,而不是数据类型),则返回true值;如果两个值不相同,则返回false值。
注:等式(==)运算符和赋值(=)运算符不同。赋值(=)运算符会更改左边的变量,将右边的变量赋值给左边的变量,而等式(==)运算符是测试相等性,并根据比较结果返回true或false。
<?php header("content-type:text/html;charset=utf-8"); // 给变量赋整数值 $x = 999; echo '$x='.$x."<br>"; // 给变量赋字符串值 $y = '999'; echo '$y='.$y."<br>"; //比较$x 和$y if ($x == $y) echo '$x和$y的值相等'; else echo '$x和$y的值不相等'; ?>
登录后复制
说明:在上面的例子中,因为等式(==)运算符只比较变量的值,$ x和$ y的值是相等的,所以直接执行if里的语句,不执行else语句。
扩展资料:PHP比较运算符
例子 | 名称 | 描述 |
---|---|---|
$a == $b | 等于 | 如果类型转换后 $a 和 $b 的值相等,则返回 TRUE,否则返回 FALSE |
$a === $b | 全等 | 如果 $a 和 $b 不仅值相等,而且它们值的类型也相等,则返回 TRUE,否则返回 FALSE |
$a != $b | 不等于 | 如果类型转换后 $a 的值不等于 $b 的值,则返回TRUE,否则返回 FALSE |
$a <> $b | 不等于 | 与 != 相同,如果类型转换后 $a 的值不等于 $b 的值,则返回 TRUE,否则返回 FALSE |
$a !== $b | 不全等 | 如果 $a 的值不等于 $b的值,或者它们值的类型不同,则返回 TRUE,否则返回 FALSE |
$a < $b | 小与 | 如果 $a 的值小于 $b 的值,则返回 TRUE,否则返回 FALSE |
$a > $b | 大于 | 如果 $a 的值大于 $b 的值,则返回 TRUE,否则返回 FALSE |
$a <= $b | 小于等于 | 如果 $a 的值小于或者等于 $b 的值,则返回 TRUE,否则返回 FALSE |
$a >= $b | 大于等于 | 如果 $a 的值大于或者等于 $b 的值,则返回 TRUE,否则返回 FALSE |
$a <=> $b | 太空船运算符(组合比较符) | 当 $a小于、等于、大于 $b时 分别返回一个小于、等于、大于0的整型值。 PHP7开始提供. |
$a ?? $b ?? $c | NULL合并操作符 | 从左往右第一个存在且不为 NULL 的操作数。如果都没有定义且不为 NULL,则返回 NULL。PHP7开始提供。 |
推荐学习:《PHP视频教程》