ThinkPHP - 每个操作都检测用户是否登录

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ThinkPHP - 每个操作都检测用户是否登录相关的知识,希望对你有一定的参考价值。

TP提供了一个自动执行的函数_initialize(), 你创建一个公共控制器CommonAction.class.php文件.

  • 定义了此方法,不能存在构造方法__construct()
<?php
/**
* +-------------------------------------------------------
* |公共控制器
* |此后的模块,如果需要判断是否登录的化,直接继承此控制器
* |此控制器直接继承核心控制器
* +-------------------------------------------------------
*/
class CommandAction extends Action{
	/**
	 * 初始化方法
	 * @return  其余控制器继承此方法,进行判断登录
	 */
	public function _initialize(){
		//判断是否存在登录session
		//如果username不存在,且Islogin不等于1,重新调回登录页面
		if ( !session(‘?username‘) || session(‘IsLogin‘) !=  1 ) {
			//跳转回登录页面
			$this->error(‘您还没有登录,请登录......‘, ‘__ROOT__/Member/login‘);
		}
	}
}

之后所有的控制器都继承这个公共的就好 就像下面的小哥说的一样

 

技术分享

以上是关于ThinkPHP - 每个操作都检测用户是否登录的主要内容,如果未能解决你的问题,请参考以下文章

thinkPHP怎么获取登陆的用户ID啊?

flask 每次检测啥判断用户登录

RBAC-基于ThinkPHP的权限管理系统

thinkphp 检测上传的图片中是否含有木马脚本

thinkphp如何实现记住用户名,密码,自动登录

thinkphp微信支付配置怎么修改