thinkPHP 空模塊和空操作、前置操作和後置操作 詳細介紹(十四)

本章節:介紹 TP 空模塊和空操作、前置操作和後置操作 詳細介紹

 

一、空模塊和空操作
1、空操作
function _empty($name){
$this->show("$name 不存在 www.2cto.com");
}
2.空模塊(EmptyAction.class.php的文件)
class EmptyAction extends Action{
function index(){
//$this->show('

該請求方法不存在!

')
$city=M('City');
$arr=$city->select();
$this->assign('list',$arr);
$name=MODULE_NAME; //獲取當前模塊名,手冊常量參考有一堆類似常量
//http://localhost/thinkphp/index.php/Index/moBanXuanRan
//模塊名就是:Index
$this->display("City:$name");
}
}

當前模塊下(控制器),調用其他模塊下的方法:
<!–?php//在CityAction控制器下調用IndexAction控制器下的方法
//直接new下,能後在找到對應方法即可
class CityAction extends Action{
public function tiaozhuan(){
$indexAction = new IndexAction();
$indexAction->index();
}
}
?>

二、前置操作和後置操作
解釋:www.2cto.com
比如:我現在在執行 http://localhost/thinkphp/index.php/Index/index index方法
前置方法:在執行index方法之前,執行的一些邏輯操作
後置方法:在執行完index方法後,執行的一些邏輯操作

例子:比如你現在做瞭個網站,但是訪問你這個網站的摸個方法時候必須登錄,就可以用
前置和後置操作

1、前置操作: _before_操作名
2、後置操作: _after_操作名
class IndexAction extends Action{
public _before_index(){
//判斷,如果沒有登錄就跳轉到首頁
//如果沒登錄就跳轉到登錄頁面
if(!isset($_SESSION['username']) || $_SESSION['username']==''){
$this->redirect('Login/index'); //跳轉到Login控制器下的index方法
}
}
public function index(){
$user = M('User');
$arr = $user->select();
$this->assign('list',$arr);
$this->display();
}

public _after_index(){
$this->show('這是index方法的後置操作!!');
}
}

 

發佈留言