ホームページ >バックエンド開発 >PHPチュートリアル >PHP のビットごとの AND または (^, &)_PHP チュートリアルの簡単な分析

PHP のビットごとの AND または (^, &)_PHP チュートリアルの簡単な分析

WBOY
WBOYオリジナル
2016-07-21 15:04:04902ブラウズ

今日、友達グループの友達がビット単位の AND or について質問しました。 。
私は PHP を 1 年間使用していますが、この部分に慣れていない可能性があります。ここでは、この部分を初心者の友人に紹介したいと思います。

コードをコピー コードは次のとおりです:
$a = 1;
$b = 2;
$c = $a^b;
echo $c // 3
?>


これは単純な加算関係ではありません
10進数の1を2進数の00000001に変換します
10進数の2を2進数の00000010に変換します
ビット単位 ^ 11 // 異なっていても、 1 としてカウントされます^_^
次に、

コードをコピーします コードは次のとおりです:
$a = 1;
$b = 2; // 1
?>


10 進数 3 は 2 進数 00000011 に変換されます
10 進数 1 は 2 進数 00000001 に変換されます
ビットごと & 00000001 // つまり、桁は同じですが、それ以外の場合はすべて 0 としてカウントされます
最後に、使い方を紹介します。 bitwise& の後の値は意味がありません。 主に $a が $c に存在するかどうかを判断するために使用されます // 多くの権限の使用法があります。


コードをコピーします コードは次のとおりです:
$my_privilege = 15; // 1+2+4+8にはすべての権限があります
$Pri = '';
$privilege_arr = array(8 =>'追加', 4=>'削除', 2=>'変更', 1=>'チェック');
foreach($privilege_arr as $k =>$v) {
$k & $my_privilege && $Pri .= '私には'.$v'の力があります'
';
}
echo $Pri;
?>



http://www.bkjia.com/PHPjc/327790.html

本当http://www.bkjia.com/PHPjc/327790.html技術記事今日、友達グループの友達がビット単位の AND or について質問しました。 。私は PHP を 1 年間使っていますが、この部分に慣れていない可能性があります。ここでは主にバイナリ向けの部分を紹介します。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。