PHP:为什么true等于-1?
echo (true == -1 ? "I'm a little bit surprising" : "Life is easy");
给
I'm a little bit surprising
有人可以解释一下为什么 -1 等于 true 吗?谢谢
回答
只需阅读手册,它说:
转换为 bool 时,以下值被视为false:
- 布尔假本身
- 整数 0(零)
- 浮点数 0.0 和 -0.0(零)
- 空字符串和字符串“0”
- 一个元素为零的数组
- 特殊类型 NULL(包括未设置的变量)
- 从无属性的空元素(即既没有子元素也没有属性的元素)创建的 SimpleXML 对象。
每个其他值都被认为是真的(包括任何资源和 NAN)。