作者vivi50218 (vivi)
看板PHP
標題[請益] 關於PHP 邏輯運算 (and,or)
時間Thu Jan 10 14:34:04 2013
我現在 再做權限設定的部分 參考網路上的做法是用 邏輯運算去做
就是 有查 新 修 刪 4個權限 分別對映到 1 2 4 8
如果只有查 就是存1 有查跟新 就是1+2=3 以此類推...
$c=4
作檢查的時候就用 if($_SESSION["auth"]&$c==4) 去做檢查
如果Session=1 作出來的結果應該是0才對 而不是4 但我作出來卻是4...
運算出來的結果都不對 難道不能這樣作嗎? 我都是用10進位
我之前作checkbox也是用這個方法 但是那時都是正確的 作權限檢查就給我出錯..
實在想不出來錯在哪裡....只好上來發問 請大家幫幫忙...
0100
and 0001
__________
0000
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 211.20.201.205
※ 編輯: vivi50218 來自: 211.20.201.205 (01/10 14:36)
※ 編輯: vivi50218 來自: 211.20.201.205 (01/10 14:36)
1F:推 flamerecca:用echo大法檢查吧 看看你實際到底比較了哪兩個數字 01/10 14:40
2F:→ vivi50218:值是對的阿.. echo 出來是1 跟 4 .... 01/10 14:50
3F:→ richile0819:應該用&&罷 01/11 10:44
4F:推 bobju:你若對運算符的優先順序不確定,最好還是用小括號 01/12 11:44