我权限授予这样的人:授予权限,如Linux
$ARR_PERSON = array(
2 => "Person B",
4 => "Person C",
8 => "Person D",
16 => "Person E",
32 => "Person F",
);
的问题是我不知道如何获得许可时,我有一个数字。例如:24.如何将它分成8和16?我想不出解决方案。
我权限授予这样的人:授予权限,如Linux
$ARR_PERSON = array(
2 => "Person B",
4 => "Person C",
8 => "Person D",
16 => "Person E",
32 => "Person F",
);
的问题是我不知道如何获得许可时,我有一个数字。例如:24.如何将它分成8和16?我想不出解决方案。
使用按位运算。当PERMISSION & MASK
非零时(例如,24 & 16
),该标志被置位。当它为零时,标志没有设置。
我不明白。你能详细说明吗?我应该使用哪个功能? – Emerald214
循环访问权限并测试'($ user-> permissions&mask)!= 0'?这并不复杂。 – duskwuff
我很抱歉什么是面具? – Emerald214
它是如何实现的?为什么不是4,4,4,4 ....或16,4,4?或者2,2,.....或者2,2,4,.... – itachi