两个&&是逻辑上的“与”。&是按位“与”。几个例子:if(($a=1)&($a==1)&($a=3)){echo'true',$a;die;}echo'false',$a;输出:true3的简单分析:表达式从左到右依次执行。如果(false&($a=3)){echo'true',$a;die;}echo'false',$a;输出:false3简要分析:即使前面的表达式为假,下面的表达式仍然会被执行。如果(true&($a=1)){echo'true',$a;die;}echo'false',$a;输出:true1if(true&($a=2)){echo'true',$a;die;}echo'false',$a;输出:false2if(true&($a=3)){echo'true',$a;die;}echo'false',$a;输出:true3if(true&($a=4)){echo'true',$a;die;}echo'false',$a;输出:false4简要分析:&是按位“与”。true转换为1。数字转换为二进制:1->12->103->114->100所以:1&1=>1=>true1&10=>0=>false1&11=>1=>真1&100=>0=>假
