php比较问题

pody 2010-07-16 09:12:03
<?php
$a = "10";
$b = 10;
if ($a == $b) {
echo("a等于b");
} else {
echo("a不等于b");
}
?>

$a不是字符类型吗?为什么结果显示“a等于b”?
...全文
131 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
pody 2010-07-18
  • 打赏
  • 举报
回复
知道了,谢啦,
jungle_java 2010-07-16
  • 打赏
  • 举报
回复
[Quote=引用楼主 hawkswujh 的回复:]
<?php
$a = "10";
$b = 10;
if ($a == $b) {
echo("a等于b");
} else {
echo("a不等于b");
}
?>

$a不是字符类型吗?为什么结果显示“a等于b”?
[/Quote]
修改为:
if ($a === $b) {
echo("a等于b");
} else {
echo("a不等于b");
}

就会打出“a不到呢关于b”了!弱类型语言啊!
nkluckyfire 2010-07-16
  • 打赏
  • 举报
回复
===
才检查数据类型匹配
jianglin28290 2010-07-16
  • 打赏
  • 举报
回复
===会判断类型
Dleno 2010-07-16
  • 打赏
  • 举报
回复
===
kyzy_yy_pm 2010-07-16
  • 打赏
  • 举报
回复
进行了自动类型转换,除非你用全等于(===),这样连他们的类型是否相同也进行了判断
pody 2010-07-16
  • 打赏
  • 举报
回复
是整型转换为字符型,还是字符型转换为整型?
amani11 2010-07-16
  • 打赏
  • 举报
回复

//呵呵,结果1,2都打印了
if(0 == 'A')
{
echo '1';
}
if('A' == 0)
{
echo '2';
}
blue44sky 2010-07-16
  • 打赏
  • 举报
回复
呵呵,因为PHP是弱类型语言。比较时他会自动转换类型的
Alfredknox 2010-07-16
  • 打赏
  • 举报
回复
PHP是弱类型语言啊 当用"=="时只比较值是否相等,如果改为"==="时要比较值和类型!所以你得到的是a等于b
lzq32 2010-07-16
  • 打赏
  • 举报
回复
PHP是弱类型语言,比较时他会自动转换类型的,就像他定义是不用定义类型一样

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧