需要引用Session类哦!
use think\facade\Session;
Base.php基本控制里写好登录信息的判断
/** * 检查是否已登录:防止重复登录,放在登录验证方法中调用 */ public function logined() { if(Session::has('user_id')) { $this->error('您已登录过了!', 'index/index'); } } /** * 检查是否未登录:放在登录操作方法的最前面,如发布文章 */ public function isLogin() { if(!Session::has('user_id')) { $this->error('您还未登录,请移步到登录界面!', 'user/login'); } }
调用方法的例子:
/** * 显示登陆页面 */ public function login() { //用户登陆前,先判断是否已经登录过了,防止重复登录 $this->logined(); $this->assign('title', '登陆首页'); return $this->view->fetch('login'); }
/** * 显示添加文章界面 */ public function insert() { //用户发布文章前,先判断是否已经登录 $this->isLogin(); $this->assign('title', '发布文章'); return $this->view->fetch(); }