これがcomp-sci 101の質問である場合は申し訳ありません。明らかな何かが欠けているかどうかはわかりません。
たとえば、一部のユーザー入力でエラーがスローされた場合、それをキャッチしてフィードバックを返したいとします。エラーは 0 ~ 8 の数値になります。0 は「エラーなし」を意味します。エラーが 3 の場合は、ユーザーに非常に具体的なフィードバックを提供したいと考えています (数字は許可されていません)。他の 7 つの可能性については、スクリプトを終了してエラーをエコーしたいだけです。
私はこれを解決していて、これで行くことにしました:
$no_errors ($_error != 0 || $_error != 3) ? FALSE : TRUE;
if (!$no_errors)
echo $error_msg['$_error'];
$error_3 ($no_errors && $_error == 3) ? TRUE : FALSE;
if ($error_3)
bunch of stuff happens;
else
bunch of other stuff;
とにかく、最初の行の OR 演算子に気付き、AND 演算子を使用する方が安全であると考えていました。しかし、考えれば考えるほど、違いが見えなくなります。
したがって、本当の問題は、特定の変数の 2 つの可能性を排除したい場合、AND と OR は同一であるか、論理的/機能的に最適な方であるかということです。