问一个if语句的问题

phper002 2010-11-11 03:01:13
<?php
if ($x = 5) {
echo 'ok';
}
?>

在小括号里,并没有做比较运算,只是做了一个赋值运算,为什么就为真了呢?就能输出ok了呢?

赋值运算后,也没有返回值啊。
...全文
75 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
jlzan1314 2010-11-11
  • 打赏
  • 举报
回复
if(5){//C语言中除了0为假外,其他都为真.不然自己去试试.
}
Hereami 2010-11-11
  • 打赏
  • 举报
回复
同上。。因为赋值了。。是抽象,不过理解就好
moliyishengyuan 2010-11-11
  • 打赏
  • 举报
回复
你想当于是
$x =5;
if ($x)
{
//code
}
肯定是很为真啊
shootblue 2010-11-11
  • 打赏
  • 举报
回复
赋值了 就相当于 判断$x了
床上等您 2010-11-11
  • 打赏
  • 举报
回复
赋值运算,赋值成功了吗??
成功了就真
ygc2022 2010-11-11
  • 打赏
  • 举报
回复
赋值运算,基本上都是 恒为
CunningBoy 2010-11-11
  • 打赏
  • 举报
回复
赋值运算,除非$x是0或者NULL,其他情况下都为真
amani11 2010-11-11
  • 打赏
  • 举报
回复
你再试试

$x = NULL
$x = ''
$x = 0
$x = -1

就知道什么问题了。。。你的写法相当于
$x = ……//赋值
if($x)……
sunlongchina 2010-11-11
  • 打赏
  • 举报
回复
php不会 路过

21,887

社区成员

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

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