PHP之mysql位運算案例講解
位運算,賦值狀態(tài)時異或?qū)?yīng)位數(shù)1的整形,判斷狀態(tài)則與運算對應(yīng)位數(shù)1的整形。最大用處就是同時判斷32位狀態(tài),節(jié)省存儲空間,便于擴(kuò)展,
如果你不知道什么是位運算的話, 那么請你先去看看基礎(chǔ)的C語言教程吧。
與運算 a & b ,
或運算 a | b ,
異或運算 a ^ b ,
或者
你也可以將 與運算理解為 + 法
例如
1|2 = 3 (1+2 = 3)
1|2|4 = 7 (1+2+4 = 7)
將 異或運算理解為 - 法
例如
3^2 = 1 (3-2 = 1)
3^1 = 2 (3-1 = 2)
最后將 與運算 作為判斷
例如
3&2 = 1 (3 = 1 + 2, 由 1和2組成 ,所以判斷3&2 = 1 )
3&4 = 0 ( 3 沒有由 4組成,所以判斷3&4 = 0)
那么位運算有何用處呢, 例如 UNIX系統(tǒng)中的權(quán)限, 通常我們所知 權(quán)限分為 r 讀, w 寫, x 執(zhí)行,其中 它們的權(quán)值分別為4,2,1, 所以 如果用戶要想擁有這三個權(quán)限 就必須 chomd 7 , 即 7=4+2+1 表明 這個用戶具有rwx權(quán)限,如果只想這個用戶具有r,x權(quán)限 那么就 chomd 5即可
說道此處就要涉及到數(shù)據(jù)庫了。
通常 我們的數(shù)據(jù)表中 可能會包含各種狀態(tài)屬性, 例如 blog表中 , 我們需要有字段表示其是否公開,是否有設(shè)置密碼,是否被管理員封鎖,是否被置頂?shù)鹊取?也會遇到在后期運維中,策劃要求增加新的功能而造成你需要增加新的字段。
這樣會造成后期的維護(hù)困難,數(shù)據(jù)庫增大,索引增大的情況。 這時使用位運算就可以巧妙的解決。
到此這篇關(guān)于PHP之mysql位運算案例講解的文章就介紹到這了,更多相關(guān)PHP之mysql位運算內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Yii2.0使用阿里云OSS的SDK上傳圖片、下載、刪除圖片示例
本篇文章主要介紹了Yii2.0使用阿里云OSS的SDK上傳圖片、下載、刪除圖片示例,具有一定的參考價值,有興趣的可以了解一下2017-09-09php桌面中心(一) 創(chuàng)建數(shù)據(jù)庫
php桌面中心(一) 創(chuàng)建數(shù)據(jù)庫...2007-03-03ThinkPHP3.2.2實現(xiàn)持久登錄(記住我)功能的方法
這篇文章主要介紹了ThinkPHP3.2.2實現(xiàn)持久登錄(記住我)功能的方法,涉及ThinkPHP操作cookie記錄登陸信息的相關(guān)技巧,需要的朋友可以參考下2016-05-05