为了账号安全,请及时绑定邮箱和手机立即绑定

为什么 0 == 'Y' 可以执行成功

为什么 0 == 'Y' 可以执行成功

PHP
心有法竹 2019-03-17 06:28:25
0 == 'Y' if(0 == 'Y'){ echo 111; } 输出 111
查看完整描述

6 回答

?
小怪兽爱吃肉

TA贡献1852条经验 获得超1个赞

变量类型的隐式转化 双方类型不同 会转化成同一种类型

查看完整回答
反对 回复 2019-03-18
?
阿波罗的战车

TA贡献1862条经验 获得超6个赞

这就是松散比较

查看完整回答
反对 回复 2019-03-18
?
富国沪深

TA贡献1790条经验 获得超9个赞

查看完整回答
反对 回复 2019-03-18
?
摇曳的蔷薇

TA贡献1793条经验 获得超6个赞

因为'Y'在和数值比较时被自动转换为了0啊

查看完整回答
反对 回复 2019-03-18
?
手掌心

TA贡献1942条经验 获得超3个赞

If you compare a number with a string or the comparison involves numerical strings, then each string is converted to a number and the comparison performed numerically.

数字和字符串比较,字符串会被转换为数字,Y不含任何的的有效数字字符,因此被转换成 0

var_dump(0 == "a"); // 0 == 0 -> true
var_dump("1" == "01"); // 1 == 1 -> true
var_dump("10" == "1e1"); // 10 == 10 -> true
var_dump(100 == "1e2"); // 100 == 100 -> true
查看完整回答
反对 回复 2019-03-18
  • 6 回答
  • 0 关注
  • 429 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信