2012-11-08 233 views
-4

我權限授予這樣的人:授予權限,如Linux

$ARR_PERSON = array(
    2 => "Person B", 
    4 => "Person C", 
    8 => "Person D", 
    16 => "Person E", 
    32 => "Person F", 
    ); 

的問題是我不知道如何獲得許可時,我有一個數字。例如:24.如何將它分成8和16?我想不出解決方案。

+0

它是如何實現的?爲什麼不是4,4,4,4 ....或16,4,4?或者2,2,.....或者2,2,4,.... – itachi

回答

3

使用按位運算。當PERMISSION & MASK非零時(例如,24 & 16),該標誌被置位。當它爲零時,標誌沒有設置。

+0

我不明白。你能詳細說明嗎?我應該使用哪個功能? – Emerald214

+0

循環訪問權限並測試'($ user-> permissions&mask)!= 0'?這並不複雜。 – duskwuff

+0

我很抱歉什麼是面具? – Emerald214