Dnešní pondělní hádanka se týká bitových operací. Následující skript zjišťuje pomocí logického součinu přítomnost druhého nejnižšího bitu v proměnné $foo. Jenže vrací opačné výsledky, než by se očekávalo. Kde je chyba?

// pro 1
$foo = 1;
// čekám false, ale vrací true!
$isSet = ($foo & 2 == 2);


// pro 2
$foo = 2;
// čekám true, ale vrací false!
$isSet = ($foo & 2 == 2);