PHP:为什么 true 等于 -1?

Cur*_*nda 1 php

echo (true == -1 ? "I'm a little bit surprising" : "Life is easy");
Run Code Online (Sandbox Code Playgroud)

I'm a little bit surprising
Run Code Online (Sandbox Code Playgroud)

有人可以解释一下为什么 -1 等于 true 吗?谢谢

KIK*_*are 5

只需阅读手册,它说:

转换为 bool 时,以下值被视为false

  • 布尔假本身
  • 整数 0(零)
  • 浮点数 0.0 和 -0.0(零)
  • 空字符串和字符串“0”
  • 一个元素为零的数组
  • 特殊类型 NULL(包括未设置的变量)
  • 从无属性的空元素(即既没有子元素也没有属性的元素)创建的 SimpleXML 对象。

每个其他值都被认为是真的(包括任何资源和 NAN)。