跟代码的时候发现如下的语句,不知其含义,望高手解释!$this->alias && $this->alias = $this->table;

解决方案 »

  1.   

    !$this->alias && $this->alias = $this->table;
    $this->alias 为空值(包括0,'' 等),
    && 后面是 赋值语句; 在$this->alias为空的情况下,将$this->table赋值给$this->alias;
    这样可以代替if(!$this->alias)
      

  2.   

    $b = 'x';$a = true;
    !$a && $a = $b;
    echo $a;    //打印1$a = false;
    !$a && $a = $b;
    echo $a;    //打印x
    恩,验证了下,确实是$a == false; 则把$b赋给$a;否则保持$a;