一个比较简单的问题,但我却不太会用。if($result)与if(isset($result))的区别,什么情况下该用哪一个?

解决方案 »

  1.   

    if($result == "" || $result==0)等价于 if($result)
    if(isset($result))等价于if($result!=null) 
      

  2.   

    if($result != "" || $result != 0)等价于 if($result)
    if(isset($result))等价于if($result!=null)  
      

  3.   

    if($result)//$result是否为真//这段代码会发出一个警告
    if($result){
      echo "TRUE";
    }
    if(isset($result))//$result 时候被定义//这段代码不会发出警告
    if(isset($result)){
      echo "TRUE";
    }
      

  4.   

    if($result) 检查 $result 是否非空
    if(isset($result)) 检查 $result 是否存在result 结果$result 通常用于承载返回的资源,如
    $result = mysql_query($sql);
    一般不会出现未定义的情况,所以只需用 if($result) 检查其是否有效即可
      

  5.   

    if($result) 检查是否值为空if(isset($result))检查是否对象存在两个是有所不同的。