php中并和& &出坑指南

  

我原来以为PHP中的,和和,是一样的,只是写法上为了可读性和美观,事实上我错了。这里面深藏了一个坑!
  看以下代码:

        英航美元=true;   bB美元=false;   b1美元=英航和bB美元;   b2=bA和美元,bB美元;   美元var_dump (b1);//美元b1=true   美元var_dump (b2);//美元b2=false   英航美元=false;   bB美元=true;   b3=$ bA或bB美元;   b4=美元英航| | $ bB;   美元var_dump (b3);//美元b3=false   美元var_dump (b4);//b4美元=true      之前      

奇怪吧,,,,和或/| |出来的结果竟然不一样的。问题出在哪里呢& # 63;
  我们再看一段代码!

        英航美元=true;   bB美元=false;   英航和美元var_dump (bB);//错误   var_dump (bA和美元,美元bB);//错误   英航美元=false;   bB美元=true;   var_dump (bA或bB美元);//正确的   var_dump()美元英航| | $ bB);//正确的      之前      

更奇怪,这时怎么是对的。所以问题可能出现在=上,一番谷歌和文档,终于找到了答案!

  

<>强运算符优先级

  

通过这个表,我们可以看到和/,,和或/| |这两组运算符的优先级竟然是不一样的。和和的优先级是低于=的,所以上面的代码就好理解了,就是先做赋值然后再做了一个,或或的逻辑运算,这个运算的结果并没有存下来。所以最后出来让我们匪夷所思的结果。

  

           结合性   运算符   额外信息               无结合性   克隆的新   克隆和新         左   (   数组         左   * *   算术         右   + + - ~ (int)(浮动)(字符串)(数组)(对象)(bool) @   类型和自增、自减         无结合性   运算符   类型         右   !   逻辑运算         左   */%   算术         左   + -。   算术和字符串         左   & lt; & lt;在比;   按位运算         无结合性   & lt;& lt;=比;祝辞=比较运算         无结合性======!==& lt;比;   比较运算         左   ,   按位运算和引用         左   ^   按位运算         左   |按位运算         左   ,,   逻辑运算         左   | |逻辑运算         左   & # 63;:   三元条件选择         右=+=-=*=/=?%=,==^=& lt; & lt;=祝辞祝辞==比;|赋值         左   和   逻辑运算         左   xor   逻辑运算         左   或   逻辑运算         左   ,   很多使用            

php中并和& &出坑指南