由逻辑异或运算符而发现的PHP诡异运算符优先级
生活随笔
收集整理的這篇文章主要介紹了
由逻辑异或运算符而发现的PHP诡异运算符优先级
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
PHP的邏輯運(yùn)算符中,xor表示邏輯異或
$a xor $b結(jié)果
如果 $a 和 $b 有且僅有一個為 true,則返回 true;如果都是true 或 false,則返回false。然而在測試xor運(yùn)算符時,發(fā)現(xiàn)一點(diǎn)問題
錯誤情況1
結(jié)果1
boolean false情況2
<?php$a = true xor false;var_dump($a); ?>結(jié)果2
boolean true這是怎么回事呢?
我們換個測試xor運(yùn)算符的方式
情況3
結(jié)果3
1這樣就沒問題了,那么前兩種情況是哪里有毛病呢?
情況4
<?php$a = (false xor true);var_dump($a) ?>結(jié)果4
boolean true這樣就對了,可見應(yīng)是運(yùn)算符優(yōu)先級導(dǎo)致的。
在PHP中,and、or、xor的運(yùn)算符優(yōu)先級是比 = 低的,在這種情況下,加個小括號就好了……
轉(zhuǎn)載于:https://www.cnblogs.com/Genesis2018/p/9079807.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的由逻辑异或运算符而发现的PHP诡异运算符优先级的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: centos安装kvm
- 下一篇: PHP: 深入了解一致性哈希