1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
/**
* 1、权限应用
* 拥有哪些权限,就把这些权限对应的数值加起来
* 例如:版主拥有权限(增加、删除、修改、查询),则版主的权限值存储为15(8+4+2+1)
* 然后【权限值之和】 与 【实际权限值】做【位于】比较
* 结果是真则拥有权限
* 结果是假则没有权限
*
* 注意:权限值必须是2的N次方,从0次方开始,31次方是2147483648
* 32次方是4294967296,已超过了常用int(10)最大存储4294967295,所以必须注意权限数量(<31个)
* 当然如果存储格式为bitint或varchar等可以存储更长数字的格式,那么权限数量可以继续增加
*/
$permission = 15; //1+2+4+8 拥有全部权限
$permissions = array(
8 => '增加',
4 => '删除',
2 => '修改',
1 => '查询'
);
foreach ($permissions as $key => $val) {
if($key & $permission) {
echo '我有' . $val . '的权力
';
}
}
|
推荐文章
2021-01-20 18:23:14
2021-01-22 17:24:38
2021-01-25 17:06:11
2021-01-28 17:37:27
2021-02-01 17:32:55
2021-02-03 17:41:37
2021-02-05 17:23:07
2021-02-08 16:59:58
稳定
产品可用性高于99.9%贴心
全国7*24小时客服热线专业
产品经理在线技术支持快速
快速上线运营快承诺
我们选择声誉坚持
10年专注高端品质开发