黑马程序员技术交流社区

标题: 有一段代码不理解 [打印本页]

作者: HCL666    时间: 2017-3-8 18:28
标题: 有一段代码不理解
$a = 'fdsaf1';
if((int)$a == $a)
    echo 1;
else
   echo 2;


我已开始以为会输出2,但是经过测试结果是1  但是我不知道为什么,求解释!
作者: 阮泰伟    时间: 2017-3-8 19:05
还没学到

作者: huawei    时间: 2017-3-10 11:14
$a == $b     
如果类型转换后 $a 等于 $b ,结果是true。
还有就是:如果比较一个数字和字符串或者比较涉及到数字内容的字符串,则字符串会被转换为数值并且比较按照数值来进行。
作者: zhangbonan2012    时间: 2017-3-12 17:55
php是弱语言类型,会自动类型转换,前面是int类型,后面的$a会自动转换为int类型,进行比对,所以是输出是1
作者: zhangbonan2012    时间: 2017-3-12 17:56
php是弱语言类型,会自动类型转换,前面是int类型,后面的$a会自动转换为int类型,进行比对,所以是输出是1




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2