素材牛VIP会员
这个PHP错在哪里
 陈***康  分类:PHP代码  人气:773  回帖:5  发布于6年前 收藏

我用thinkphp5执行下面这个,不知道为什么会成功。按照常理来讲$q没定义,也就是不存在,if语句应该是不成功才对

<?php
     
        if($q==0){
            echo 'qqqqq';
            
        }
 标签:php

讨论这个帖子(5)垃圾回帖将一律封号处理……

Lv6 码匠
zc***78 软件测试工程师 6年前#1

php 中的null 等于 false,0 也是false,未定义变量默认指向空,所以($q == 0) = true

Lv5 码农
wz***16 技术总监 6年前#2

要记住php是弱类型。。。。

Lv7 码师
过***天 技术总监 6年前#3

自动类型转化,$q会当成false

Lv6 码匠
yj***23 站长 6年前#4

判断定义应该用if(isset($b))

Lv6 码匠
85***32 交互设计师 6年前#5

$q未定义,可以当成false,false即为0, 要判断完全相等用===

 文明上网,理性发言!   😉 阿里云幸运券,戳我领取