Yii框架ACF(accessController)简单权限控制操作示例


Posted in PHP onApril 26, 2019

本文实例讲述了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){ //禁止访问的规则
},
'ips'=>[],//允许的ip
'verbs'=>['GET','POST','DELETE'],//请求的方式
],
        ],
      ],
    ];
  }
  // ...
}

访问规则通过如下的上下文参数设置:

actions: 设置哪个动作匹配此规则。

roles: 设定哪个角色匹配此规则。

*: 任何用户,包括匿名和验证通过的用户。

?: 匿名用户。

@: 验证通过的用户。

ips: 设定哪个客户端IP匹配此规则。

verbs: 设定哪种请求类型(例如:GET, POST)匹配此规则。

matchCallback:指定一个PHP回调,以确定应用该规则。

denyCallback:PHP回调,当规则禁止访问的时候会被调用。

public function actionSpecialCallback()
{
  return $this->render('happy-halloween');
}

以上代码可以用来控制博客系统的访客和登录用户的相关权限

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

PHP 相关文章推荐
php的curl实现get和post的代码
Aug 23 PHP
PHP常用代码大全(新手入门必备)
Jun 29 PHP
PHP排序之二维数组的按照字母排序实现代码
Aug 13 PHP
如何利用php array_multisort函数 对数据库结果进行复杂排序
Jun 08 PHP
php创建sprite
Feb 11 PHP
phpmailer在服务器上不能正常发送邮件的解决办法
Jul 08 PHP
WampServer下安装多个版本的PHP、mysql、apache图文教程
Jan 07 PHP
php+html5实现无刷新图片上传教程
Jan 22 PHP
php指定长度分割字符串str_split函数用法示例
Jan 30 PHP
php实现用户注册密码的crypt加密
Jun 08 PHP
PHP的图像处理实例小结【文字水印、图片水印、压缩图像等】
Dec 20 PHP
PHP中类与对象功能、用法实例解读
Mar 27 PHP
YII框架实现自定义第三方扩展操作示例
Apr 26 #PHP
PHP中PCRE正则解析代码详解
Apr 26 #PHP
通过PHP设置BugFree获取邮箱通知
Apr 25 #PHP
PHP实现字符串的全排列详解
Apr 24 #PHP
PHP实现二维数组按照指定的字段进行排序算法示例
Apr 23 #PHP
Laravel5.0+框架邮件发送功能实现方法图文与实例详解
Apr 23 #PHP
一文掌握PHP Xdebug 本地与远程调试(小结)
Apr 23 #PHP
You might like
《逃离塔科夫》——“萌新劝退,老手自嗨”的硬核FPS游戏
2020/04/03 其他游戏
BBS(php & mysql)完整版(四)
2006/10/09 PHP
详谈PHP中public,private,protected,abstract等关键字的用法
2017/12/31 PHP
php删除一个路径下的所有文件夹和文件的方法
2018/02/07 PHP
jquery.validate使用攻略 第五步 正则验证
2010/07/01 Javascript
js null,undefined,字符串小结
2010/08/21 Javascript
js中匿名函数的N种写法
2010/09/08 Javascript
一个简单的js树形菜单
2011/12/09 Javascript
jquery制作居中遮罩层效果分享
2014/02/21 Javascript
window.open()详解及浏览器兼容性问题示例探讨
2014/05/29 Javascript
jquery列表拖动排列(由项目提取相当好用)
2014/06/17 Javascript
jQuery无刷新切换主题皮肤实例讲解
2015/10/21 Javascript
Angularjs中UI Router全攻略
2016/01/29 Javascript
详解angularJS自定义指令间的相互交互
2017/07/05 Javascript
详解基于electron制作一个node压缩图片的桌面应用
2019/01/29 Javascript
Vue使用Proxy监听所有接口状态的方法实现
2019/06/07 Javascript
vue-video-player 断点续播的实现
2021/02/01 Vue.js
python获取本机mac地址和ip地址的方法
2015/04/29 Python
python 创建弹出式菜单的实现代码
2017/07/11 Python
Python基础教程之内置函数locals()和globals()用法分析
2018/03/16 Python
Python操作mongodb的9个步骤
2018/06/04 Python
python 处理数字,把大于上限的数字置零实现方法
2019/01/28 Python
python中报错"json.decoder.JSONDecodeError: Expecting value:"的解决
2019/04/29 Python
python3 循环读取excel文件并写入json操作
2020/07/14 Python
基于Python采集爬取微信公众号历史数据
2020/11/27 Python
html5的canvas实现3d雪花飘舞效果
2013/12/27 HTML / CSS
设计师家具购买和委托在线市场:Viyet
2016/11/16 全球购物
我们的节日清明节活动方案
2014/03/05 职场文书
公共艺术专业自荐信
2014/09/01 职场文书
成绩单评语
2015/01/04 职场文书
2015年清明节演讲稿范文
2015/03/17 职场文书
初中毕业感言300字
2015/07/31 职场文书
学校运动会开幕词
2016/03/03 职场文书
Html5获取用户当前位置的几种方式
2022/01/18 HTML / CSS
Python基本知识点总结
2022/04/07 Python
zabbix 代理服务器的部署与 zabbix-snmp 监控问题
2022/07/15 Servers