0
我建立一个权限系统,该系统是这样工作的一些功能:定义存储在一个变量
DEFINE ('CAN_POST', 1);
DEFINE ('CAN_READ', 2);
DEFINE ('IS_GUEST', '');
DEFINE ('IS_USER', CAN_READ);
DEFINE ('IS_MODERATOR', CAN_READ | CAN_POST);
然后我有一些像这样的权限当前用户:
DEFINE ('CURRENT', IS_MODERATOR);
而且我检查是这样的:
if (CURRENT & CAN_POST) print('CAN MAKE POSTS<br />');
if (CURRENT & CAN_READ) print('CAN READ STUFF<br />');
一个问题 b这里egins:
我需要从数据库中获取当前用户权限,它当然是一个字符串。例如,我将在数据库中包含如下内容:IS_MODERATOR | CAN_REVIEW
这意味着用户具有IS_MODERATOR
具有(CAN_READ, CAN_POST)
的所有权限,并且除CAN_REVIEW
之外。
我如何定义CURRENT
不变,将有IS_MODERATOR | CAN_REVIEW
不只是它的字符串,将无法正常工作的功能。
'这是当然是一个字符串当然你错了。它将是一个nubmer。说,CAN_READ | CAN_POST将表示为3 – 2013-03-07 15:41:44
谢谢,但我不明白,对不起。 '$ res =“IS_MODERATOR”; DEFINE('CURRENT',$ res); print(CURRENT);'给我一个字符串'IS_MODERATOR'。不是一个数字。 – Davit 2013-03-07 15:48:33