PHP中的按位與和按位或操作示例
更新時間:2014年01月27日 16:46:31 作者:
按位與主要是對二進制數(shù)操作,下面為大家介紹下PHP中的按位與和按位或的操作,希望對大家有所幫助
按位與主要是對二進制數(shù)操作。
代碼如下:
<?php
$a = 1;
$b = 2;
$c = $a^b;
echo $c // 3
?>
這里不是單純的相加關(guān)系
十進制 1換算成二進制 00000001
十進制 2換算成二進制 00000010
按位^ 00000011 // 就是不相同的都算成1 啦 ^_^
然后,
<?php
$a = 1;
$b = 2;
echo $a & $c; // 1
?>
十進制 3換算成二進制 00000011
十進制 1換算成二進制 00000001
按位& 00000001 // 就是各個位數(shù)相同的不變否則都算成0
最后介紹下用法 ; 按位&后返回值是沒意義的。 主要是用來判斷$a 是否存在于 $c // 權(quán)限用法比較多。
<?php
$my_privilege = 15; // 1+2+4+8 擁有全部權(quán)限
$Pri = '';
$privilege_arr = array(8=>'增', 4=>'刪',2=>'改',1=>'查');
foreach($privilege_arr as $k =>$v){
$k & $my_privilege && $Pri .= '我有'.$v.'的權(quán)力<br>';
}
echo $Pri;
?>
代碼如下:
復制代碼 代碼如下:
<?php
$a = 1;
$b = 2;
$c = $a^b;
echo $c // 3
?>
這里不是單純的相加關(guān)系
十進制 1換算成二進制 00000001
十進制 2換算成二進制 00000010
按位^ 00000011 // 就是不相同的都算成1 啦 ^_^
然后,
復制代碼 代碼如下:
<?php
$a = 1;
$b = 2;
echo $a & $c; // 1
?>
十進制 3換算成二進制 00000011
十進制 1換算成二進制 00000001
按位& 00000001 // 就是各個位數(shù)相同的不變否則都算成0
最后介紹下用法 ; 按位&后返回值是沒意義的。 主要是用來判斷$a 是否存在于 $c // 權(quán)限用法比較多。
復制代碼 代碼如下:
<?php
$my_privilege = 15; // 1+2+4+8 擁有全部權(quán)限
$Pri = '';
$privilege_arr = array(8=>'增', 4=>'刪',2=>'改',1=>'查');
foreach($privilege_arr as $k =>$v){
$k & $my_privilege && $Pri .= '我有'.$v.'的權(quán)力<br>';
}
echo $Pri;
?>
相關(guān)文章
laravel 實現(xiàn)設(shè)置時區(qū)的簡單方法
今天小編就為大家分享一篇laravel 實現(xiàn)設(shè)置時區(qū)的簡單方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-10-10PHP面向?qū)ο蟪绦蛟O(shè)計之接口的繼承定義與用法詳解
這篇文章主要介紹了PHP面向?qū)ο蟪绦蛟O(shè)計之接口的繼承定義與用法,結(jié)合實例形式分析了php接口的概念、定義、使用方法及相關(guān)操作注意事項,需要的朋友可以參考下2018-12-12PHP7生產(chǎn)環(huán)境隊列Beanstalkd用法詳解
在本篇文章里小編給大家分享的是關(guān)于PHP7生產(chǎn)環(huán)境隊列Beanstalkd用法內(nèi)容,需要的朋友們可以參考下。2020-05-05