ビット演算子は、整数における特定のビットをオンまたはオフにすることを 可能にします。もし左辺値と右辺値共に文字列であった場合にはビット演算子は 文字の ASCII 値に対して作用します。
<?php |
表 15-3. ビット演算子
例 | 名前 | 結果 |
---|---|---|
$a & $b | ビット積 | $a および $b の両方にセットされているビット |
$a | $b | ビット和 | $a または $b のどちらかにセットされているビット |
$a ^ $b | 排他的論理和 | $a または $b にセットされており、両方にセットされていないビット |
~ $a | 否定 | $a にセットされているビットはセットせず、そうでないものは逆にする |
$a << $b | 左シフト | $a のビットを左に $b ビットシフトする(各シフトは "2をかける" ことを意味します) |
$a >> $b | 右シフト | $a のビットを右に $b ビットシフトします (各シフトは "2で割る" ことを意味します) |
警告 |
32 ビットシステムでは 32 ビット以上の右シフトは行わないでください。 また、結果が 32 ビットを超えてしまうような左シフトも行わないでください。 |