php里,为什么0 == 'abc'是成立的?

0==''是成立的我倒是明白,
0=='abc'也成立就不懂了,请各位指教!
ITMISS
浏览 449回答 2
2回答

侃侃无极

啊哈,前两天正好看了相关的文章,这是因为你的是一个数字和一个字符串进行比较,PHP会把字符串转换成数字再进行比较。PHP转换的规则的是:若字符串以数字开头,则取开头数字作为转换结果,若无则输出0。例如:123abc转换后应该是123,而abc则为0,0==0这当然是成立的啦!具体可以参考官方手册:如果比较一个整数和字符串,则字符串会被转换为整数。PS:@gaosboy讲的'00'=='000'则是两个字符串的比较,官方手册也有解释。

慕姐8265434

$a='abc';$b=(int)$a;echo$b;if(0==$b){//成立}执行一下你就知道了
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript