课程
/后端开发
/PHP
/PHP入门篇
将$b="1" 改成 $b=1 var_dump($a==$b) 为什么两个整形的比较,输出的结果还是bool类型呢?两个整形
2014-08-05
源自:PHP入门篇 5-4
正在回答
var_dump($a == $b);$a == $b;这人表达式的比较结果要么是 true ,要么是false;也就是说,表达式比较的结果就是布尔型,所以 var_dump($a == $b)返回的值是bool类型。。
计算机也可以用1代表“真”,0代表“假”,我理解为两个整形数值比较,结果类型也为整形,这种应该是错的;
同时,var_dump()是输出变量类型和长度,是否可以理解为,如果是var_dump(比较运算),不管参与比较运算的两个的类型类型是否一致,只要是有比较的统一输出为bool类型。
银鳞
比较运算,只有两个结果,一种是真的,一种是假的,原本$a=1,$b="1",数值是一样,但是类型不一样,$a里面的是整型,$b里面的是字符串,所以var_dump($a==$b)返回是真,如果var_dump($a===$b),记得是三个等于号(需要是数值和类型都一样),那返回值就是假,$b改成了 $b=1 ,那这两者的数据类型是一样的,数值也是一样的,所以返回值是真,如果是var_dump($a===$b),返回结果也是真.
举报
PHP入门教程轻松学习,行业大牛帮您快速掌握PHP编程基础知识。
1 回答字符串和整数
1 回答我这个哪错了
1 回答连接数据库
1 回答目录修改不成功
3 回答echo $m1 = memory_get_usage(); 这个是什么意思