(Yaf >=1.0.0)
Yaf_Controller_Abstract::forward — 轉向到另一個動作
$controller
, 字串 $action
, 陣列 $paramters
= ?): 布林值$module
,$controller
,$action
,$paramters
= ?將目前的執行流程轉向至其他動作。
注意事項:
這個方法不會立即切換到目標動作,而是在目前的流程完成後才會執行。
module
目標模組名稱,如果給定 NULL,則使用預設模組名稱
controller
目標控制器名稱
action
目標動作名稱
paramters
呼叫參數
成功時返回 true
,失敗時返回 false
。
範例 #1 Yaf_Controller_Abstract::forward() 範例
<?php
class IndexController extends Yaf_Controller_Abstract
{
public function indexAction(){
$logined = $_SESSION["login"];
if (!$logined) {
$this->forward("login", array("from" => "Index")); // 轉向到登入動作
return FALSE; // 這很重要,它會結束目前的工作流程
// 並且告知 Yaf 不要執行自動渲染
}
// 其他處理程序
}
public function loginAction() {
echo "login, redirected from ", $this->_request->getParam("from") , " action";
}
}
?>
上述範例會輸出類似以下的內容
login, redirected from Index action