Побитовые операции в PHP?

Я понимаю, что побитовые операции необходимы для многоуровневого программирования, такого как запись драйверов устройств, низкоуровневая графика, сборка и декодирование пакетов протокола связи. Я занимаюсь PHP уже несколько лет, и я редко видел побитовые операции в PHP-проектах.

Можете ли вы привести примеры использования?

    Вы можете использовать его для битмасков для кодирования комбинаций вещей. В принципе, это работает, давая каждому бит смысл, поэтому, если у вас есть 00000000 , каждый бит представляет что-то, помимо того, что он также является одним десятичным числом. Предположим, у меня есть некоторые предпочтения для пользователей, которых я хочу сохранить, но моя база данных очень ограничена с точки зрения хранения. Я мог бы просто сохранить десятичное число и извлечь из этого, какие предпочтения выбраны, например, 92^3 + 2^000001001 , поэтому у пользователя есть предпочтение 1 и предпочтение 4.

      00000000 Meaning Bin Dec | Examples │││││││└ Preference 1 2^0 1 | Pref 1+2 is Dec 3 is 00000011 ││││││└─ Preference 2 2^1 2 | Pref 1+8 is Dec 129 is 10000001 │││││└── Preference 3 2^2 4 | Pref 3,4+6 is Dec 44 is 00101100 ││││└─── Preference 4 2^3 8 | all Prefs is Dec 255 is 11111111 │││└──── Preference 5 2^4 16 | ││└───── Preference 6 2^5 32 | etc ... │└────── Preference 7 2^6 64 | └─────── Preference 8 2^7 128 | 

    дальнейшее чтение

    Побитовые операции чрезвычайно полезны в информации учетных данных. Например:

     function is_moderator($credentials) { return $credentials & 4; } function is_admin($credentials) { return $credentials & 8; } 

    и так далее…

    Таким образом, мы можем сохранить простое целое число в одном столбце базы данных, чтобы иметь все учетные данные в системе.