Оператори
PHP Manual

Побитови оператори

Побитовите оператори ви позволяват да променяте определени битове в целите числа. Ако и левият и десният параметър са низове, побитовият оператор ще оперира с ASCII стойностите на съответния символ.

<?php
echo 12 9// Извежда '5'

echo "12" "9"// Извежда символа за изтриване (Backspace) (ascii 8)
                 // ('1' (ascii 49)) ^ ('9' (ascii 57)) = #8

echo "hallo" "hello"// Извежда ASCII стойностите #0 #4 #0 #0 #0
                        // 'a' ^ 'e' = #4

echo "3"// Извежда 1
              // 2 ^ ((int)"3") == 1

echo "2" 3// Извежда 1
              // ((int)"2") ^ 3 == 1
?>

Побитови оператори
Пример Наименование Резултат
$a & $b И (And) Вдигат се битовете, които са установени и в $a и в $b.
$a | $b Или (Or) Вдигат се битовете, които са установени или в $a или в $b.
$a ^ $b Изключващо или (Xor) Вдигат се битовете, които са установени само в $a или само в $b, но не и в двете едновременно.
~ $a Не (Not) Вдигат се битовете, които не са установени в $a, и обратното - тези, които са установени, се свалят.
$a << $b Преместване наляво (Shift left) Преместване битовете на $a с $b позиции наляво (всяка позиция означава "умножение по две")
$a >> $b Преместване надясно (Shift right) Преместване битовете на $a с $b позиции наляво (всяка позиция означава "деление на две")
Предупреждение

Не премествайте надясно повече от 32 бита на 32-битови системи. Също, не премествайте наляво в случай, че резултатът ще бъде число по-дълго от 32 бита.


Оператори
PHP Manual