Yaf_Controller_Abstract::forward

(Yaf >=1.0.0)

Yaf_Controller_Abstract::forward別のアクションに転送する

説明

public Yaf_Controller_Abstract::forward(string $action, array $paramters = ?): bool
public Yaf_Controller_Abstract::forward(string $controller, string $action, array $paramters = ?): bool
public Yaf_Controller_Abstract::forward(
    string $module,
    string $controller,
    string $action,
    array $paramters = ?
): bool

現在の実行プロセスを別のアクションに転送します。

注意:

このメソッドは、その場ですぐに次のアクションに切り替えるわけではなく、 現在の実行フローが終わってから次のアクションに転送します。

パラメータ

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")); // login アクションに転送します
             
return FALSE;  // これが重要です。ここで現在の作業フローが終了し、
                            // Yaf に対して自動レンダリングをしないよう指示します。
         
}

         
// 別の処理
    
}

    public function 
loginAction() {
         echo 
"login, redirected from "$this->_request->getParam("from") , " action";
    }
}
?>

上の例の出力は、 たとえば以下のようになります。

   login, redirected from Index action

参考

  • Yaf_Request_Abstrace::getParam()
関連キーワード:  アクション, Yaf, 転送, Controller, string, , paramters, 移動, controller, array