Yii框架ACF(accessController)簡(jiǎn)單權(quán)限控制操作示例
本文實(shí)例講述了Yii框架ACF(accessController)簡(jiǎn)單權(quán)限控制操作。分享給大家供大家參考,具體如下:
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號(hào)才可以訪問(wèn)
},
'denyCallback'=>function($rule,$action){ //禁止訪問(wèn)的規(guī)則
},
'ips'=>[],//允許的ip
'verbs'=>['GET','POST','DELETE'],//請(qǐng)求的方式
],
],
],
];
}
// ...
}
訪問(wèn)規(guī)則通過(guò)如下的上下文參數(shù)設(shè)置:
actions: 設(shè)置哪個(gè)動(dòng)作匹配此規(guī)則。
roles: 設(shè)定哪個(gè)角色匹配此規(guī)則。
*: 任何用戶,包括匿名和驗(yàn)證通過(guò)的用戶。
?: 匿名用戶。
@: 驗(yàn)證通過(guò)的用戶。
ips: 設(shè)定哪個(gè)客戶端IP匹配此規(guī)則。
verbs: 設(shè)定哪種請(qǐng)求類型(例如:GET, POST)匹配此規(guī)則。
matchCallback:指定一個(gè)PHP回調(diào),以確定應(yīng)用該規(guī)則。
denyCallback:PHP回調(diào),當(dāng)規(guī)則禁止訪問(wèn)的時(shí)候會(huì)被調(diào)用。
public function actionSpecialCallback()
{
return $this->render('happy-halloween');
}
以上代碼可以用來(lái)控制博客系統(tǒng)的訪客和登錄用戶的相關(guān)權(quán)限
更多關(guān)于Yii相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Yii框架入門及常用技巧總結(jié)》、《php優(yōu)秀開發(fā)框架總結(jié)》、《smarty模板入門基礎(chǔ)教程》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫(kù)操作入門教程》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家基于Yii框架的PHP程序設(shè)計(jì)有所幫助。
相關(guān)文章
php設(shè)計(jì)模式之迭代器模式實(shí)例分析【星際爭(zhēng)霸游戲案例】
這篇文章主要介紹了php設(shè)計(jì)模式之迭代器模式,結(jié)合星際爭(zhēng)霸游戲案例形式分析了PHP迭代器模式相關(guān)原理、用法及操作注意事項(xiàng),需要的朋友可以參考下2020-04-04
Zend Framework生成驗(yàn)證碼并實(shí)現(xiàn)驗(yàn)證碼驗(yàn)證功能(附demo源碼下載)
這篇文章主要介紹了Zend Framework生成驗(yàn)證碼并實(shí)現(xiàn)驗(yàn)證碼驗(yàn)證功能,較為詳細(xì)的分析講述了Zend Framework實(shí)現(xiàn)操作驗(yàn)證碼操作的具體步驟與相關(guān)技巧,并附帶demo源碼供讀者下載參考,需要的朋友可以參考下2016-03-03
PHP 對(duì)象接口簡(jiǎn)單實(shí)現(xiàn)方法示例
這篇文章主要介紹了PHP 對(duì)象接口,結(jié)合實(shí)例形式簡(jiǎn)單分析了PHP面向?qū)ο蟪绦蛟O(shè)計(jì)中接口的基本概念、功能、實(shí)現(xiàn)方法及操作注意事項(xiàng),需要的朋友可以參考下2020-04-04
PhpStorm2020 + phpstudyV8 +XDebug的教程詳解
這篇文章主要介紹了PhpStorm2020 + phpstudyV8 +XDebug的教程詳解,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-09-09
php+memcache實(shí)現(xiàn)的網(wǎng)站在線人數(shù)統(tǒng)計(jì)代碼
這篇文章主要介紹了php+memcache實(shí)現(xiàn)的網(wǎng)站在線人數(shù)統(tǒng)計(jì)代碼,代碼例子簡(jiǎn)潔實(shí)用,需要的朋友可以參考下2014-07-07
laravel框架模型中非靜態(tài)方法也能靜態(tài)調(diào)用的原理分析
這篇文章主要介紹了laravel框架模型中非靜態(tài)方法也能靜態(tài)調(diào)用的原理,結(jié)合實(shí)例形式分析了laravel模型基類中使用魔術(shù)方法實(shí)現(xiàn)非靜態(tài)方法進(jìn)行靜態(tài)調(diào)用的相關(guān)原理,需要的朋友可以參考下2019-11-11

