一道有趣的++运算题目

$a = 3;
$b = 5;

if($a = 5 || $b = 7){

  $a++;
  $b++;

}

echo $a.' '$b;

输出结果是 "1 6" .

详解:

按照运算优先级 括号里 $a = (5 || $b =7) 

当进行 || 运算时, 前面为真则后面不执行

所以此时 $a = ture;

而大括号中 $a++ 运算后,  $a 依旧等于ture (布尔值进行++运算后保持原类型不变)

所以进行 echo 时, $a "." 链接空格时转换成字符串类型 所以输出为 "1 6"

原文地址:https://www.cnblogs.com/caly/p/2834482.html