Что я на самом деле хочу сделать:
Есть 4 условия. Максимум 2 будет установлен. Максимально 4 допустимых комбинации.
$types = array(
"A" => 0x1,
"B" => 0x2,
"C" => 0x4,
"D" => 0x8,
);
Мы можем иметь A / B + C / D (= AC, AD, BC, BD)
$flags = $types["A"] | $types["C"];
if ($flags & ($types['A'] | $types['D']))
echo "true";
else
echo "false";
// output: "true"
Хорошо, я уже возился с этим … ну, слишком долго.
Как правильно установить и проверить два флага?
// pseudo code explanation
x = A + D
if(x = A+C) do something
Задача ещё не решена.
Других решений пока нет …