Yii框架ACF(accessController)簡單權限控制操作示例
本文實例講述了Yii框架ACF(accessController)簡單權限控制操作。分享給大家供大家參考,具體如下:
use yii\filters\AccessControl; class SiteController extends Controller { public function behaviors() { return [ 'access' =>[ 'class' => AccessControl::className(), 'rules' => [ [ 'allow' => true, 'actions' => ['index', 'view'], 'roles' => ['?'], ], [ 'allow' => true, 'actions' => ['view','index','create','update'], 'roles' => ['@'], ], [ 'actions' => ['special-callback'], //'only' => ['special-callback'], 'allow' => true, 'matchCallback'=>function($rule,$action){ return date('Y-m-d') === '2017-02-14';//只有2017年2月14號才可以訪問 }, 'denyCallback'=>function($rule,$action){ //禁止訪問的規(guī)則 }, 'ips'=>[],//允許的ip 'verbs'=>['GET','POST','DELETE'],//請求的方式 ], ], ], ]; } // ... }
訪問規(guī)則通過如下的上下文參數(shù)設置:
actions: 設置哪個動作匹配此規(guī)則。
roles: 設定哪個角色匹配此規(guī)則。
*: 任何用戶,包括匿名和驗證通過的用戶。
?: 匿名用戶。
@: 驗證通過的用戶。
ips: 設定哪個客戶端IP匹配此規(guī)則。
verbs: 設定哪種請求類型(例如:GET, POST)匹配此規(guī)則。
matchCallback:指定一個PHP回調(diào),以確定應用該規(guī)則。
denyCallback:PHP回調(diào),當規(guī)則禁止訪問的時候會被調(diào)用。
public function actionSpecialCallback() { return $this->render('happy-halloween'); }
以上代碼可以用來控制博客系統(tǒng)的訪客和登錄用戶的相關權限
更多關于Yii相關內(nèi)容感興趣的讀者可查看本站專題:《Yii框架入門及常用技巧總結》、《php優(yōu)秀開發(fā)框架總結》、《smarty模板入門基礎教程》、《php面向?qū)ο蟪绦蛟O計入門教程》、《php字符串(string)用法總結》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家基于Yii框架的PHP程序設計有所幫助。
相關文章
php實例分享之通過遞歸實現(xiàn)刪除目錄下的所有文件詳解
最近遇到一個實際問題,需要清空制定目錄下的所有文件及清空數(shù)據(jù)庫。清空數(shù)據(jù)庫不難,但要如何遞歸刪除一個目錄下的所有文件呢。 于是去網(wǎng)上研究了下資料再加上自己琢磨解決了這一問題。2014-05-05PHP無限循環(huán)獲取MySQL中的數(shù)據(jù)實例代碼
最近公司有個需求需要從MySQL獲取數(shù)據(jù),然后在頁面上無線循環(huán)的翻頁展示.其實這個功能可以通過jq實現(xiàn),也可以通過php+mysql實現(xiàn),下面小編給大家分享基于PHP無限循環(huán)獲取MySQL中的數(shù)據(jù)實現(xiàn)方法,感興趣的朋友一起看看吧2017-08-08php寫app接口并返回json數(shù)據(jù)的實例(分享)
下面小編就為大家?guī)硪黄猵hp寫app接口并返回json數(shù)據(jù)的實例(分享)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-05-05