1. 三个等号「===」的基本介绍
在 PHP 中,「===」是一种比较运算符,表示严格相等。它的作用是比较两个值的类型和值是否都相等。它与「==」相比,不会自动进行类型转换。严格相等是指两个值必须是相同的数据类型,并且包含相同的数据。
$a = 10;
$b = '10';
var_dump($a == $b); // 输出 bool(true)
var_dump($a === $b); // 输出 bool(false)
在上面的例子中,「==」比较的是两个值是否相等,而「===」比较的是两个值的类型和值是否完全一致。
2. 什么时候使用三个等号「===」
2.1 判断内容相等
如果我们需要比较两个变量的内容是否完全一致,而不仅仅是值相等,那么应该使用三个等号「===」。
$a = '0';
$b = 0;
if ($a === $b) {
echo '$a 和 $b 完全一致';
} else {
echo '$a 和 $b 不完全一致';
}
在上面的代码中,由于 $a 和 $b 的数据类型不同,所以它们不会完全一致。如果我们使用两个等号「==」来比较的话,结果将会是相等。
2.2 判断数据类型
使用三个等号「===」可以判断变量的数据类型是否相同,这一点是两个等号「==」无法做到的。
$a = 0;
$b = false;
if ($a === $b) {
echo '$a 和 $b 完全一致';
} else {
echo '$a 和 $b 数据类型不同';
}
在上面的例子中,由于 $a 是一个整数,而 $b 是一个布尔值,所以它们的数据类型不同。如果我们使用两个等号「==」来比较的话,结果将会是相等。
3. 总结
在 PHP 中,「===」是一种比较运算符,表示严格相等。与两个等号「==」相比,它不会进行类型转换,而是比较两个值的数据类型和内容是否完全一致。因此,在需要判断内容和数据类型是否完全一致时,应该使用三个等号「===」。