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

PHP 1=="1a"的不解

PHP 1=="1a"的不解

PHP
HUWWW 2019-03-04 06:29:11
if(1=="1a"){ echo 'true'; }else{ echo 'false'; }以上输出true,之前我的总结是:1.==只是对值得比较(将两边值转化为同类型再比较),而===则是对值和类型的比较。 2.对于==的比较,若有一方为数字,另一方为字符串或空或null,均会先将非数字一方转化为0,再做比较。 难道这里的字符'1a'呗转换成为数字1了????如果改成if(1=="a")或者if(1=="a1")结果都是false?这怎么理解?
查看完整描述

2 回答

?
大话西游666

TA贡献1817条经验 获得超14个赞

字符串1a会被转换为数字1,这是PHP基础知识了。

查看完整回答
反对 回复 2019-03-18
?
温温酱

TA贡献1752条经验 获得超4个赞

1 == true
0 == null == '' == false
但是 1 == '1a' 0 == 'a' 且 'a' == true,'1a' == true

查看完整回答
反对 回复 2019-03-18
  • 2 回答
  • 0 关注
  • 944 浏览

添加回答

举报

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