isset($var是判断$var是否被设置,设置执行
if ($var){ 
  
}   $var为真的时候执行

解决方案 »

  1.   

    if($var) {
      // empty($var) == false
    } else {
      // empty($var) == true
    }isset 是判断变量是否存在的,不论变量的值为多少,只要有值 isset 总是 true。手册上这块讲得比较清楚,概念看手册。底层处理过程看 ext/standad/var.c 中 c 对 isset 的实现。
      

  2.   

    if ($var){ 
      
    }   $var非零为ture,零为fulseif (isset($var)){ }  中$var可以为任意数据类型,设置了为ture,否则false.
      

  3.   

    楼上说的我都清楚,我不明白的地方是:$var=123;
    if ($var){
       ......
       ......
    }
    这种写法是怎么判断的。因为这里$var不为真也不为空,不为1也不为0,不为true也不为false
      

  4.   

    $var不为空,返回真。$var为空,返回假。
      

  5.   

    这样的话,跟isset($var)的区别在什么地方呢?
    isset不也是不为空返真,为空返假嘛。
      

  6.   

    那为什么还要有isset呢,使用isset速度会更快还是会更慢呢??
      

  7.   

    区别就在
    $var=false;if(isset($var)){
    .......
    }变量值为false的时候isset返回真。为什么这样用,要联系上下文,如果上面用过$var,只要不是NULL,那么isset($var)就为真。