PHP にはビット演算を使用する演算子の種類があります。この記事では主に PHP のビット演算について詳しく説明します。お役に立てれば幸いです。
一:& ビットごとの AND
$a&$b は、両方とも 1 であるバイナリ $a ビットとバイナリ $b ビットを 1 に設定し、他のビットを 0 に設定します
例:
7&3=>7 ( 0111)&3(0011) 0111 と 0011 は両方とも 1 で、最後の 2 つの 1 だけが 1 であることがわかり、7(0111)&3(0011)=0011 は 10 進数で 3 となり、7&3=3 になります
ビットごとの AND 実際の用途は、パリティ $a&1 を決定することです
原理分析:
1 の 2 進法では、最後の桁だけが 1、他の桁はすべて 0、奇数の最後の桁も 1、
例えば、11&1=>11(1011)&1(0001)=1は奇数、12&1=>12(1100)&1=0は偶数です
この方法は奇数と奇数の判定においてより高いパフォーマンスを持っています。 $a%2==1
二より偶数:| またはビットごとに同一の OR
$a|$b は $a と $b の任意のビットを 1 に設定します。
上記と同じ例
3: ^
例は上と同じです
Four:~ ビットごとの反転ではありません
$a~$b $a の 0 であるビットを 1 に設定し、その逆も同様です。
上記と同じ例
5: << 左にシフト (左にシフト)
$a<<$b; $a のビットを左に $b 回移動します (各移動は「乗算」を意味します) 2" ")。
ビット演算は乗算や除算よりも高速であるため、$a*2 は $a<<1
6: >>右シフト (右シフト)
$a>>$b と書くことができます。 ; a のビットは $b 回右にシフトされます (各シフトは「2 を掛ける」ことを意味します)。
ビット演算は乗算や除算よりも高速であるため、$a/2 は $a>>1 として記述できます
関連推奨事項:
PHP ビット演算子の許可操作の詳細な例例の概要phpビット演算 シンボルの使い方のヒントphpビット演算子の使用例を詳しく解説以上がPHPのビット演算を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。