$a==1 || $b=100; 这种叫短路运算;
短路运算一般有两种情况,当逻辑或 左边的表达式 为真时,右边的表达式就不会计算,比如
你的这个,$a==1 || $b=100; $a==1 为真,$b=100;就不会参与运算,所以这个时候$b 就是一个没有声明也没有赋值的变量,所以后提示你$b 没有被声明
第二种情况 是 当逻辑与 左边的表达式为假的时,右边的表达式也不会被计算,会被短路掉
比如
$a=1;
$a==2 && $b=100;
echo $b;
这样也效果一样,$b 会是一个没有声明的变量
$a==1||$b=100;是什么意思?
$b 这个变量是没有被定义!