Nie chodzi o referencję. Serio:) To tylko podobieństwo operatorów. Blog na którym ładnie było wszystko opisane padł/czy coś i postaram się wyłuszczyć sprawę tutaj. Będę edytował co jakiś czas więc sprawdzaj.
@edit: OPERACJE BITOWE
Dla komputera wszystko, jak wiadomo, jest liczbą. Co gorsza - liczbą w systemie dwójkowym. Wynika z tego, że np. liczba 2 dla komputera wygląda tak - 10, a na przykład 23 będzie równe 10111. Liczba 23 składa się z 5 bitów, każdy przyjmuje wartość 1 lub 0. Operacje bitowe polegają na operacjach na własnie tych pojedynczych bitach. Operator bitowy AND (w PHP &) działa w następujący sposób:
Kod
23 & 2 = 2
10111 & 10 = 10
10111
& 00010
--------
00010
Innymi słowy - w wyniku zostaje tylko ten bit, który jest załączony i w jednej i w drugiej liczbie.
Nawiasem - operacje bitowe (i związane z nimi tzw. flagi) to dosyć konkretne "narzędzie" i warto je sobie dokładnie przyswoić.