Глядя на код, написанный другим разработчиком, я наткнулся на это:
for($i=1; $i<=30; $i++)
{
if($i&1)
$color = '#fff';
else
$color = '#bbb';
}
Эта переменная $color используется для цвета фона строки позже в коде. Чередование цветов работает нормально.
Если бы я писал это, я бы использовал оператор модуля (% ), а не побитовый оператор (& ).
Почему побитовый оператор работает в этом случае? Есть ли какое-либо преимущество использования этого метода, а не оператора модуля?