W PHP dostępne są różne operatory bitowe, które umożliwiają wykonywanie operacji logicznych na poziomie bitów w liczbach. Oto opis kilku podstawowych operacji bitowych w PHP:
Operacja bitowego OR ('|'): Wykonuje operację logiczną OR na poszczególnych bitach dwóch liczb. Wynikująca wartość bitowa będzie 1, jeśli przynajmniej jeden z bitów jest równy 1.
$a = 5; // Binarnie: 0101 $b = 3; // Binarnie: 0011 $c = $a | $b; // Wynik: 0111 (binarnie) lub 7 (dziesiętnie)
Operacja bitowego AND ('&'): Wykonuje operację logiczną AND na poszczególnych bitach dwóch liczb. Wynikująca wartość bitowa będzie 1 tylko wtedy, gdy oba bity są równe 1.
$a = 5; // Binarnie: 0101 $b = 3; // Binarnie: 0011 $c = $a & $b; // Wynik: 0001 (binarnie) lub 1 (dziesiętnie)
Operacja bitowego XOR ('^'): Wykonuje operację logiczną XOR (exclusive OR) na poszczególnych bitach dwóch liczb. Wynikująca wartość bitowa będzie 1, jeśli bity są różne.
$a = 5; // Binarnie: 0101 $b = 3; // Binarnie: 0011 $c = $a ^ $b; // Wynik: 0110 (binarnie) lub 6 (dziesiętnie)
Operacja bitowego NOT ('~'): Wykonuje operację negacji na wszystkich bitach liczby. Zamienia bity 1 na 0 i bity 0 na 1.
$a = 5; // Binarnie: 0101 $c = ~$a; // Wynik: 1010 (binarnie) lub -6 (dziesiętnie)
Operacje przesunięcia bitowego: PHP oferuje również operatory przesunięcia bitowego, które przesuwają bity liczby w lewo ('<<') lub w prawo ('>>') o określoną ilość miejsc.
$a = 5; // Binarnie: 0101 $c = $a << 2; // Wynik: 10100 (binarnie) lub 20 (dziesiętnie) $d = $a >> 1; // Wynik: 0010 (binarnie) lub 2 (dziesiętnie)
Te to tylko podstawowe operacje bitowe dostępne w PHP. Można je wykorzystać do różnych zastosowań, takich jak manipulowanie flagami, optymalizacja kodu czy praca na poziomie niskiego poziomu.