php中三个等号是什么意思
时间 : 2023-02-13 17:20:02声明: : 文章内容来自网络,不保证准确性,请自行甄别信息有效性

在PHP当中使用双等号(==)和三个等号(===)最主要的目的就是在判断变量的值是否相等。

用双等号(==)进行的比较,只会比较变量的值是否一致,而完全不会比较他们的类型,也就是说它会自动进行一个类型转换,然后再进行相等的判断。比如说,在下面的这种几种情况,它们都会返回TRUE:

```php

<?php

$num = 3;

echo $num == 3; // TRUE

echo $num == '3'; // TRUE

echo $num == true; // TRUE

?>

三个等号(===)进行的比较,除了会比较变量的值是否相当外,还会进行类型判断,因此在上面的几种情况当中,就只有第一条语句会返回TRUE,其余的例子结果都会返回FALSE。

由此可见,三个等号(===)进行的是更严格的比较,而双等号(==)则是一种比较宽松的比较,一般情况下我们用双等号(==)就能满足我们大部分日常使用的需求了,因此我们不必简单地用三个等号(===),也不应该把“只使用三个等号(===)”当作设置一个新的习惯。

PHP中的三个等号是“恒等比较”运算符,简称“三等号”。它是在PHP 5.6版本中引入的,作为PHP中更严格的等号比较运算符,旨在提高代码的可靠性。

恒等比较运算符和等号比较类似,它们都是比较两个值是否相等的运算符,但是恒等比较的运算结果更接近真实意义上的等价。首先,它会比较操作数类型是否相同,当两个操作数类型不同时,它会返回false。其次,它会比较操作数是否相等,当两个操作数不相等时,它也会返回false。

除了上述运算结果外,PHP中三个等号还具有另外一种功能,就是等效类型转换。如果等号比较的2个操作数的值相同,但其类型不同,PHP会自动将数据类型变换为常用的类型,而恒等号运算符做的则是硬性的类型转换,无论两个操作数是否为可比较的类型,会强制将操作数的类型转换为预定的类型,然后再进行比较。

来说到这里,你可能想知道这种深层次的类型转换是否对程序性能有影响,实际上不会,因为PHP在底层拥有一套严格的内部类型转换机制,确保类型转换过程在保证安全的前提下是尽可能快速的。

PHP中等号与恒等号比较运算符可以在不同程度上帮助我们提升程序的安全性,是我们在编写代码