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');
		}
	}
}

之后所有的控制器都繼承這個公共的就好 就像下面的小哥說的一樣

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM