[yii2] 实现所有action方法之前执行一段代码或者方法
我做的是在执行任何方法之前,验证用户登陆状态!
其实就是在controller中写beforeaction()方法,
然后我的方案就是做一个基类,然后让你所有控制器继承你的基类,
如果控制器的基类用__constuct()
方法做一些初始化的工作(比如初始化模板引擎),如果你在控制器里实现了__construct,你还需要在__construct里调用parent::__construct()
就太麻烦了。
然后在此基类中写入方法beforeAction()或者init(),
在YII2里这两个方法自动就执行啦!
别忘了最后return true;
class BaseController extends Controller{ // 白名单 public $allowAllAction = [ // 登陆控制器的白名单 'seller/login/login', ]; /*** 登录统一验证 (每次动作先执行本方法)*/public function beforeAction( $action ){// 检验登陆状态合法性$is_login = $this->checkSellerLoginStatus();if( in_array( $action->getUniqueId(), $this->allowAllAction ) ){return true;}if( empty($_COOKIE['name']) ){ // 非法跳转$this->redirect( UrlService::buildSellerUrl( '/login/login' ) );return false;}return true;}}
转载于:https://www.cnblogs.com/lipcblog/p/7217654.html
[yii2] 实现所有action方法之前执行一段代码或者方法相关推荐
- 如何运行一段python代码_Python退出时强制运行一段代码如何实现 Python退出时强制运行一段代码实现方法...
本篇文章小编给大家分享一下Python退出时强制运行一段代码实现方法,代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看. 设想这样一个场景,你要给一个项目开发测 ...
- C语言main()主函数执行完毕后是否会再执行一段代码
C语言main()主函数执行完毕后是否会再执行一段代码 分享到: QQ空间 新浪微博 腾讯微博 豆瓣 人人网 main() 主函数执行完毕后,是否可能会再执行一段代码?给出说明. main主函数是所有 ...
- C++main函数的参数介绍以及如何在main函数前执行一段代码
C++中参数介绍:https://www.cnblogs.com/jisongxie/p/7892366.html C++中主函数的执行过程以及如何在main函数前执行一段代码:https://www ...
- JS流程控制语句 反反复复(while循环) 和for循环有相同功能的还有while循环, while循环重复执行一段代码,直到某个条件不再满足。...
反反复复(while循环) 和for循环有相同功能的还有while循环, while循环重复执行一段代码,直到某个条件不再满足. while语句结构: while(判断条件) {循环语句} 使用whi ...
- 网站被黑后处理方法及删除批量恶意代码的方法步骤
网站被黑后处理方法及删除批量恶意代码的方法步骤 如果发现网站出现异常情况,如页面被修改.管理账号不能登录,则说明网站已经被入侵.这时就需要尽快进行处理,以防止黑客种植的网页病毒扩散. 暂时关闭网站 网 ...
- VC,Windbg,gdb执行到指定代码行方法
在调试的时候,当执行到一段代码时,为了调试或者其他目的需要,有时候需要对一些或者几行代码多次执行或者跳过几行代码的执行,这是很有用的,比如下面的一个循环: for(int i=0;i<num;i ...
- python执行一段代码_我发现了个 Python 黑魔法,执行任意代码都会自动念上一段 『平安经』...
最近的"平安经"可谓是引起了不小的风波啊. 作为一个正儿八经的程序员,最害怕的就是自己的代码上线出现各种各样的 BUG. 为此明哥就研究了一下,如何在你执行任意 Python 代码 ...
- gdb 扩展 默认参数_默认方法一种扩展旧代码的方法
gdb 扩展 默认参数 如您所知,Java的新版本已于2014年3月18日发布,我将介绍一系列文章来演示其新功能,也许在某些方面,我将谈论我的想法和批评. 我认为重要的第一个功能是"默认方法 ...
- 默认方法一种扩展旧代码的方法
如您所知,Java的新版本于2014年3月18日发布,我将介绍一系列文章来演示其新功能,也许在某些方面,我将谈论我的想法和批评. 我认为重要的第一个功能是"默认方法",在所有Jav ...
最新文章
- Qt 清空QPixMap
- C#.NET常见问题(FAQ)-如何修改Form不能修改窗体大小
- linux内核的反复--一切都是过程
- 第十章 Internet
- Tomcat10 端口修改 Linux 环境
- 过程中存根的作用有_聚氨酯发泡胶有哪些作用?使用过程中表现出哪些特点?...
- angular日期输入框html,html5 – Angular2:日期格式文本框ngModel不起作用
- 机器学习与计算机视觉(深度学习)
- Oracle主库、备库redo日志管理
- japidocs怎么设置参数必填_常用的3种拍摄模式,相机参数怎么设置?如何正确曝光?...
- 记事本之修改非txt文档
- 经典中的经典算法:动态规划(详细解释,从入门到实践,逐步讲解)
- PC端品优购电商项目源码
- 3D打印Gcode文件命令详解
- 都市美女们的日常穿搭,女孩子春天这样穿才最时髦
- Linux释放内存的命令
- linux主板上的网卡不显示,redhat4.8在MSI主板安装完识别不到网卡RTL8168
- 未来中国智能制造九大趋势
- 货代的主要工作是什么?
- 【亲测可用】云之道知识付费v2独立版3.0.1全开源+前后端源码
热门文章
- 动态分区分配的“首次适应算法_kafka集群关于资源分配的手册
- python 换脸 github_人脸识别和换脸相关深度学习开源项目github汇总
- python的实例属性和静态属性表_Python:类属性,实例属性,私有属性与静态方法,类方法,实例方法...
- html输入框只能输入几个,input 两个input框只能允许同时输入一个
- matlab 求复数的模长,matlab计算带有复数的函数,最后求复数函数的模,结果里面却有...
- Sharepoint java sdk_java – 使用JAX-WS将文件保存到Sharepoint服务器
- android触摸屏idc,Android触摸屏IDC
- php获取栏目文章总数,织梦DedeCMS获取当前栏目文章数量
- 三极管和MOS管有什么不一样?用MOS管还是三极管?
- 关于「无人驾驶」的学习路线...