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()

<?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 не делать авторендеринг
         
}

         
// other processes
    
}

    public function 
loginAction() {
         echo 
"Вход, перенаправлено с действия "$this->_request->getParam("from");
    }
}
?>

Результатом выполнения данного примера будет что-то подобное:

   Вход, перенаправлено с действия Index

Возвращаемые значения

Возвращает FALSE в случае возникновения ошибки

Смотрите также

  • Yaf_Request_Abstrace::getParam()