這真的取決於你需要什麼。
例如,如果頁面有徹底改變大的一部分,我的建議是創造不同的模板,包括他們根據自己的「權限」
$permission = $_SESSION['type_user'];
include '/path/to/file/with/permission/'.$permission.'/tpl.html';
,並有類似
東西在頁面
<?php
//inside include.php you have the line similar to
//$permission = isset($_SESSION['type_user']) && $_SESSION['type_user']!=''?$_SESSION['type_user']:'common';
require_once '/mast/config/include.php';
include '/path/to/file/with/permission/common/header.html';
include '/path/to/file/with/permission/'.$permission.'/tpl_1.html';
include '/path/to/file/with/permission/common/tpl_2.html';
include '/path/to/file/with/permission/'.$permission.'/tpl_3.html';
include '/path/to/file/with/permission/common/footer.html';
?>
如果腳本充滿了像「顯示這個文本」,或「顯示這個按鈕」,您可以創建將檢查的權限爲您
功能小配件
<?php
function can_user($action, $what){
switch($action){
case 'write':
return $your_current_if_on_what;
break;
case 'read':
default:
return $your_current_if_on_what;
break;
}
}
?>
and the template will look like:
[my html]
<?=can_user('read','button')?'My Button':''?>
[my html]
作爲一條經驗法則,如果一段代碼被使用超過2次,需要分別放入一個函數/文件中,所以如果你有很多「IFS」,你需要創建一個函數
擴展答案:是的,ACL是一個訪問控制列表。它基本上說「這是一個用戶帳戶詳細信息頁面,因此可以通過以下角色訪問:'註冊用戶','管理員','超級用戶','上帝'」。 – cypher