PHP == vs ===运算符

==和之间有什么区别===

  • 松散==比较到底如何工作?
  • 严格===比较到底如何工作?

有什么有用的例子吗?

回答:

如果==运算符不同,则它们在两种不同类型之间进行转换,而===运算符执行“类型安全比较”。这意味着只有两个操作数具有相同的类型和相同的值时,它才返回true。

例子:

1 === 1: true

1 == 1: true

1 === "1": false // 1 is an integer, "1" is a string

1 == "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)

以上是 PHP == vs ===运算符 的全部内容, 来源链接: utcz.com/qa/404437.html

回到顶部