PHP基礎(chǔ)語法之 位運(yùn)算
寫了幾年P(guān)HP的人都好奇說,沒有用過位運(yùn)算符。所以,此處你看二進(jìn)制看的頭暈,就去T¥M¥D吧。
位運(yùn)算符基本不用,我們也將這個知識設(shè)置為了解級別。位運(yùn)算符的知識點(diǎn),你不想學(xué)習(xí)也可以。等以后用到位運(yùn)算的時候,再來學(xué)習(xí)吧。
知識學(xué)習(xí)級別【了解級,有印象即可】。
舉例 | 說明 | 詳細(xì)說明 |
---|---|---|
$a & $b | And(按位與) | 將把 $a 和 $b 中都為 1 的位設(shè)為 1。 |
$a | $b | Or(按位或) | 將把 $a 和 $b 中任何一個為 1 的位設(shè)為 1。 |
$a ^ $b | Xor(按位異或) | 將把 $a 和 $b 中一個為 1 另一個為 0 的位設(shè)為 1。 |
~ $a | Not(按位取反) | 將 $a 中為 0 的位設(shè)為 1,反之亦然。 |
$a << $b | 左移 | 將 $a 中的位向左移動 $b 次(每一次移動都表示“乘以 2”)。 |
$a >> $b | 右移 | 將 $a 中的位向右移動 $b 次(每一次移動都表示“除以 2”)。 |
以上的符號,均為二進(jìn)制的運(yùn)算。
二進(jìn)制大家絕大多數(shù)情況下不會遇到,遇到了補(bǔ)一下二進(jìn)制這一塊的知識就會了。
<?php //$x二進(jìn)制值為: $x = 5; //$y二進(jìn)制值為: $y = 8; //結(jié)果為13 echo $x ^ $y; ?>
變量 | 二進(jìn)制值 |
---|---|
$x | 0101 |
$y | 1000 |
異或結(jié)果 | 1101 |
異或解釋:如果x,y兩個值不相同,則異或結(jié)果為1。如果x,y兩個值相同,異或結(jié)果為0。
由此可推1101為$x和$y異或出來的結(jié)果,1101用二進(jìn)制轉(zhuǎn)10進(jìn)制工具轉(zhuǎn)換后的結(jié)果就為13。
在線二級制轉(zhuǎn)十進(jìn)截圖: