Yaf_Controller_Abstract::forward
(Yaf >=1.0.0)
Yaf_Controller_Abstract::forward — 別のアクションに転送する
説明
public Yaf_Controller_Abstract::forward
( string $action
[, array $paramters
] ) : void
public Yaf_Controller_Abstract::forward
( string $controller
, string $action
[, array $paramters
] ) : void
public Yaf_Controller_Abstract::forward
( string $module
, string $controller
, string $action
[, array $paramters
] ) : void
現在の実行プロセスを別のアクションに転送します。
注意:
このメソッドは、その場ですぐに次のアクションに切り替えるわけではなく、 現在の実行フローが終わってから次のアクションに転送します。
パラメータ
module
- 移動先のモジュール名。NULL を渡した場合はデフォルトのモジュール名と見なします。
controller
- 移動先のコントローラ名。
action
- 移動先のアクション名。
paramters
- 呼び出しの引数。
例
例1 Yaf_Controller_Abstract::forward() の例
<?phpclass IndexController extends Yaf_Controller_Abstract{ public function indexAction(){ $logined = $_SESSION["login"]; if (!$logined) { $this->forward("login", array("from" => "Index")); // login アクションに転送します return FALSE; // これが重要です。ここで現在の作業フローが終了し、 // Yaf に対して自動レンダリングをしないよう指示します。 } // 別の処理 } public function loginAction() { echo "login, redirected from ", $this->_request->getParam("from") , " action"; }}?>
上の例の出力は、 たとえば以下のようになります。
login, redirected from Index action
返り値
失敗した場合は FALSE を返します。
参考
- Yaf_Request_Abstrace::getParam()