2016年Linux認證基礎知識:php做權限管理
在學習Linux認證過程中,每個人會遇到每個人不同的`問題,或小或大,那麼你知道在Linux下,php怎麼做權限管理?下面跟yjbys小編來看看最新的程序吧!
假設有十進制數字10
獲取10的二進制每一位的值:
(10 》 0) & 0x01 //最低位的值
(10》 1)& 0x01 //倒數第二位的值
假設有二進制數101
轉10進制
= 0;
|= (1 《 0); //低位是1
|= (1 《 1);//高位是1
//中間位不是1
class Test{
//假設有權限管理系統。共有4種權限
private = array(
"P1",
"P2",
"P3",
"P4",
);
//獲取用戶權限的int值
public function getPowerInt({
= 0;
foreach(->power as => {
if(in_array(,{
|= (1 《
}
}
return ;
}
//根據int值獲取權限列表
function getPowerByInt({
= array();
foreach(->power as => {
= ( 》 & 0x01;
}
return ;
}
}
//假設現在有個用戶擁有P1,P4權限
= array('P1','P4');
= new Test();
//查看用戶權限的int值
var_dump(->getPowerInt(//輸出9
//注意順序爲倒序如果有個用戶是0101即只有P1,P3兩個權限,即十進制5,
//輸出權限列表
var_dump(->getPowerByInt(5));
//輸出array(4) {
// ["P1"]=>
// int(1)
// ["P2"]=>
// int(0)
// ["P3"]=>
// int(1)
// ["P4"]=>
// int(0)
// }
//----------------如果權限不夠用了,需要新增權限--------
//倒序。新增在高位
//修改
// = array(
// "P1",
// "P2",
// "P3",
// "P4",
// "P5",
// );
// 測試新結果 :老權限不受影響。老用戶默認沒有新權限
// 所以可以在設計之初認爲最低位爲最高權限,all.
// var_dump(->getPowerInt(//輸出9
// var_dump(->getPowerByInt(5));
//輸出array(4) {
// ["P1"]=>
// int(1)
// ["P2"]=>
// int(0)
// ["P3"]=>
// int(1)
// ["P4"]=>
// int(0)
// ["P5"]=>
// int(0)
// }
相關文章
-
Linux認證基礎知識:RedHat之查看和修改IP
首先是查看當前機器網卡的'IP1.顯示當前啓動的網絡接口命令:ifconfig2.查看當前所有網絡接口命令:ifconfig -a3.查看指定網絡接口命令:ifconfig eth0在LINUX下修改IP分爲二種情況,1.調試時修改IP,僅在當前生效,重啓後恢復 -
Linux認證基礎知識:php相對路徑和絕對路徑
在平日的學習、工作和生活裏,大家都寫過作文吧,作文根據寫作時限的不同可以分爲限時作文和非限時作文。爲了讓您在寫作文時更加簡單方便,以下是小編收集整理的我家的小院作文,供大家參考借鑑,希望可以幫助到有需要的朋友。 -
Linux認證基礎知識:Linux中正則表達式與文件處理
在學習Linux認證過程中,每個人會遇到每個人不同的問題,或小或大,真心希望同學們能少受些折磨,多得一些成就感與豁然開朗的感覺,這樣的學習才能化被動爲主動,越學越快樂。 一、正則表達式1.簡單的說正則表達式就是處理字 -
Linux認證系統管理:linux下搭建ftp
最近爲了方便目標板與PC機上LINUX之間的通訊,就在LINUX搭建了FTP,工作不難,寫個總結。主要經過以下幾個步驟: 1.檢查是否安裝了vsftpd服務器可以用rpm -q vsftpd命令來查看,若顯示"vsftpd-1.1.3-8",則說明系統已經安裝vs -
Linux認證系統管理:部署PHP項目應該注意的幾點
在部署PHP項目時,有幾點需要特別注意,也是初學者比較容易忽視的點:一、下載WAMPServer後,如何安裝配置?二、如何通過客戶端管理MySQL數據庫?三、如何通過IP地址訪問PHP網站,如果在局域網內部訪問服務器上的PHP網站?針對第 -
Linux認證基礎知識:linux操作系統目錄結構
linux 目錄結構/: 根目錄,一般根目錄下只存放目錄,不要存放文件,/etc、/bin、/dev、/lib、/sbin應該和根目錄放置在一個分區中/bin:/usr/bin: 可執行二進制文件的目錄,如常用的命令ls、tar、mv、cat等。/boot: 放置li -
2016年Linux認證基礎知識:mysql數據庫的全量備份
本文爲大家整理的是mysql數據庫的全量備份的相關資料,希望能幫助到大家的複習。mysql數據庫的全量備份,包括數據和結構。保存最新的10次備份。 準備工作:創建備份主目錄mkdir /backup 一:編寫腳步文件mysql_#!/bin/ -
Linux認證基礎知識:RedHat之vi命令詳解
本文介紹了vi(vim)的基本使用方法,但對於普通用戶來說基本上夠了!vi編輯器是所有Unix及Linux系統下標準的編輯器,它的強大不遜色於任何最新的文本編輯器,這裏只是簡單地介紹一下它的用法和一小部分指令。由於對Unix及Lin -
Linux權限管理基本知識大全
Linux系統有什麼基本權限,權限管理命令是什麼?下面跟yjbys小編一起來看看吧! 一、基本權限linux權限機制採用UGO模式。其中 u(user)表示所屬用戶、g(group)表示所屬組、o(other)表示除了所屬用戶、所屬組之外的情況 -
2017年Linux認證考試基礎知識
Linux超過了Novell公司的Netware,成爲僅次於微軟WindowsServer的排名第二的服務器操作系統。下面是小編整理的關於Linux認證考試基礎知識,歡迎大家參考! linux基礎知識在掛載之前需要確定下列三種信息:*) 要掛載對象