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