一个简单的按位与的应用场景

假设 用户的权限 为 $myPrivilege = 15;

权限表为 array(8 => '增',4 => '改', 2 => '删', 1 => '查' );

我们要知道用户有哪些权限,可以怎么做?

15 = 1 + 2 + 4 + 8;即用户拥有增删改查的权限。

那 如果是 9 呢? 即 1 + 8。

我们都知道 所有数据在计算机中都是二进制表示

那么 15 换算成 二进制。就是

1111

代码实现

1 $myPrivilege = 15;
2 $privilegeArr = array(8=>'增', 4=>'删',2=>'改',1=>'查');
3 foreach($privilegeArr as $k => $v) {
4     $k *  $myPrivilege  && $Pri .= '我有' . $v . "权限<br>";           
5 }
6 echo $Pri;

 

 

posted @ 2014-05-09 17:30  天机无双  阅读(363)  评论(0)    收藏  举报