0

好的,这就是我打算做的事情的要点。

我要准备两张桌子。一种带有“等级”或“角色”,一种带有用户。我想基于角色/用户分配权限并基于用户收回权限。

因此,仅出于一般目的假设我们有 $role_can $user_can 和 $user_cant

我知道为了指定哪些目的,我们可以使用按位或。$permissions = ($role_can | $user_can) 将两者结合起来。

现在,我希望在那之后能够收回某些权限。这通常使用按位 XOR 完成,但我想让它成为白痴证明。换句话说,我不想通过排除他们尚未拥有的权限来意外授予他们对权限的访问权限。

做这个的最好方式是什么?

传统上 (($role_can | $user_can) ^ $user_cant) - 但它不适用于白痴打样。

我对位操作还是很陌生,所以如果答案很明显,请放轻松。

我正在使用 PHP,但可接受的答案可以是任何语言/伪代码,只要它有效且易于理解。

谢谢。

4

1 回答 1

2

您可以使用按位“非”运算符

(($role_can | $user_can) & ~$user_cant)
于 2010-07-08T04:08:33.410 回答