如果==运算符不同,则它们在两种不同类型之间进行转换,而===运算符执行“类型安全比较”。这意味着只有两个操作数具有相同的类型和相同的值时,它才返回true。
例子:
1 === 1: true1 == 1: true1 === "1": false // 1 is an integer, "1" is a string1 == "1": true // "1" gets casted to an integer, which is 1"foo" === "foo": true // both operands are strings and have the same value
警告:具有相等成员的同一个类的两个实例与===运算符不匹配。例:
$a = new stdClass();$a->foo = "bar";$b = clone $a;var_dump($a === $b); // bool(false)



