Operatory bitowe służą do operowania na wartościach konkretnych bitów w liczbie. Jeśli zarówno lewo jak i prawostronne operandy są typu string, operatory bitowe będą wykonywać operacje na poszczególnych znakach tych łańcuchów.
<?php echo 12 ^ 9; // Zwraca '5' echo "12" ^ "9"; // Zwraca znak Backspace (ascii 8) // ('1' (ascii 49)) ^ ('9' (ascii 57)) = #8 echo "hallo" ^ "hello"; // Zwraca wartości ascii #0 #4 #0 #0 #0 // 'a' ^ 'e' = #4 ?> |
Tabela 11-3. Operatory Bitowe
Przykład | Nazwa | Opis |
---|---|---|
$a & $b | Mnożenie bitowe | Dany bit wynikowy jest równy 1 tylko jeśli obydwa bity składowe są równe 1. |
$a | $b | Sumowanie bitowe | Dany bit wynikowy jest równy 1 jeśli conajmniej jeden bit składowy jest równy 1. |
$a ^ $b | Sumowanie bitowe modulo 2 | Dany bit wynikowy jest równy 1 wtedy i tylko wtedy, kiedy jeden z bitów składowych jest równy 1 a drugi jest równy 0. |
~ $a | Negacja bitowa | Bity w zmiennej $a mające wartość 1 otrzymują wartość 0 i na odwrót. |
$a << $b | Przesunięcie w lewo | Przesuwa bity w zmiennej $a o $b kroków w lewo (każdy krok znaczy "pomnożone razy dwa"). |
$a >> $b | Przesunięcie w prawo | Przesuwa bity w zmiennej $a o $b kroków w prawo (każdy krok znaczy "podzielone przez dwa"). |
Poprzedni | Spis treści | Następny |
Operatory Przypisania | Początek rozdziału | Operatory Porównania |