PHPで”AND,OR,XOR”を使ってバイナリ計算をする

シェアする

  • このエントリーをはてなブックマークに追加
  • Evernoteに保存Evernoteに保存
論理演算子 記号 利用例 備考
AND & 1 & 2 = 0 0001 AND 0010 = 0000
OR | 1 | 2 = 3 0001 OR 0010 = 0011
XOR ^ 5 ^ 6 = 3 0101 XOR 0110 = 0011
NOT ~ ~(5 ^ 6) = -4 NOT(0101 XOR 0110) = !0011 = 11111111111111111111111111111100

利用例として、ファイルのアクセス権(ファイルの属性)で、その他が書き込みになっているかのチェックに使える。

$perms = fileperms("hoge.txt");
/*
8進数だと"40707" = 10進数だと"16839" = 2進数だと"100000111000111"
*/
100000000000010

■関連URL

こちらも、よくまとまっています。

http://www.phppro.jp/phptips/archives/vol48/1


スポンサーリンク
レクタングル(大)広告