寫java web代碼的時候,可以定義過濾器,對控制器進行過濾,可以實現權限驗證等等
在thinkphp中也可以通過繼承父類的方法,實現類似的需求
父類代碼
<?php
/**
* Created by PhpStorm.
* User: xieyicheng
* Date: 2014/12/11
* Time: 14:43
*/
namespace Admin\Controller;
use Think\Controller;
class CommonController extends Controller
{
public function _initialize()
{
if(!isset($_SESSION['username'])) {
redirect( U('Admin/Login/index'), 0);//沒登陸,跳轉到登陸頁
}
}
}
子類代碼
<?php
/**
* Created by PhpStorm.
* User: xieyicheng
* Date: 2014/12/4
* Time: 13:06
*/
namespace Admin\Controller;
use Home\Model;
use Admin\Model\Shop;
class FileController extends CommonController
{
public function index()
{
$this->display();
}
}
這樣子類在調用控制器的方法前,就會先執行驗證登陸的操作了