關於**頁面顯示的時候,許可權判斷的問題有很多中的方式來實現。
1,可以在每個頁面中都單獨進行許可權判斷,這個是最大眾的方法。
2,可以為每乙個最終頁面檔案都作乙個配置檔案,用來進行許可權判斷,當使用者訪問這個頁面的時候,通過乙個函式來判斷,是否存在這個檔案。如果存在,就根據檔案的內容進行許可權判斷,如果不存在,就不用進行許可權判斷。
3,是統一作判斷,做乙個單獨的函式,通過一定的配置進行許可權判斷。
下面的乙個例子是第三種方法,這種方法適合於任何的情況,且比較通用。
步驟
一、整理訪問路徑資訊,把需要進行許可權驗證的路徑進行整理,整理成乙個列表
步驟二、整理需要進行許可權驗證的分類,為每一種許可權驗證作乙個單獨的函式,
步驟三、把 「訪問路徑」和 「許可權驗證函式」的對應關係,按 1:1 寫到乙個配置檔案或是陣列裡面,例如下面的 filter.php 裡面的 $filter 陣列
步驟四、做乙個驗證函式,解析當前的訪問路徑,進行許可權判斷。
檔案一、filter.php
<?php
$filter = array('/admin' => 'adminlogin',
'/admin/useradmin' => 'poweradminlogin',
'/myshop' => 'userlogin'
);function adminlogin()
function poweradminlogin()
function userlogin()
function authorization(){
global $filter;
// 取出 並 解析 當前訪問的url路徑,判斷 $filter 裡面是否含有當前要過濾的路徑
// 例如當前訪問路徑是
// 取出/admin/useradmin/gogo判斷 $filter 裡面是否含有 這個路徑。
// 如果沒有就在取出 /admin/useradmin 判斷 $filter 裡面是否含有 這個路徑
// 如果有就返回 $filter 中,這個路徑(/admin/useradmin)對應的值 $value,
// 實際上這個 $value 就是乙個函式的名稱,
// 這個函式就是用來判斷當前使用者,是否對當前的訪問路徑,有訪問許可權的函式
// 通過 $value() 方式呼叫這個函式,返回 「成功」 or 「失敗」
// 如果失敗,就重新定向到錯誤頁面,也可以在 $value() 函式裡面進行相應的處理
// 如果成功,返回true
<?
require_once "filter.php";
authorization();
//其他的操作。
?>
繼續摘抄 php頁面訪問時,統一進行許可權驗證的設計
author 大齡青年 php頁面訪問時,統一進行許可權驗證的設計 其實這個有很多中的方式來實現。1,可以在每個頁面中都單獨進行許可權判斷,這個是最大眾的方法。2,可以為每乙個最終頁面檔案都作乙個配置檔案,用來進行許可權判斷,當使用者訪問這個頁面的時候,通過乙個函式來判斷,是否存在這個檔案。如果存在...
php頁面訪問時,統一進行許可權驗證的設計
php頁面訪問時,統一進行許可權驗證的設計 author 大齡青年 email wenadmin sina.com from 其實這個有很多中的方式來實現。1,可以在每個頁面中都單獨進行許可權判斷,這個是最大眾的方法。2,可以為每乙個最終頁面檔案都作乙個配置檔案,用來進行許可權判斷,當使用者訪問這個...
php 訪問控制 統一進行許可權驗證的設計
author 大齡青年 email wenadmin sina.com from 其實這個有很多中的方式來實現。1,可以在每個頁面中都單獨進行許可權判斷,這個是最大眾的方法。2,可以為每乙個最終頁面檔案都作乙個配置檔案,用來進行許可權判斷,當使用者訪問這個頁面的時候,通過乙個函式來判斷,是否存在這個...