Spec-Zone.ru › Phalcon 3

Класс Phalcon\Mvc\Dispatcher

расширяет абстрактный класс Phalcon\Dispatcher

реализует Phalcon\Events\EventsAwareInterface, Phalon\Di\InjectionAwareInterface, Phalcon\DispatcherInterface, Phalcon\Mvc\DispatcherInterface

Исходный код на GitHub

Диспатчинг — это процесс взятия объекта запроса, извлечения из него имени модуля, имени контроллера, имени действия и необязательных параметров, а затем создание экземпляра контроллера и вызова действия этого контроллера.

$di = new \Phalcon\Di();

$dispatcher = new \Phalcon\Mvc\Dispatcher();

$dispatcher->setDI($di);

$dispatcher->setControllerName("posts");
$dispatcher->setActionName("index");
$dispatcher->setParams([]);

$controller = $dispatcher->dispatch();

Константы

целое число EXCEPTION_NO_DI

целое число EXCEPTION_CYCLIC_ROUTING

целое число EXCEPTION_HANDLER_NOT_FOUND

целое число EXCEPTION_INVALID_HANDLER

целое число EXCEPTION_INVALID_PARAMS

целое число EXCEPTION_ACTION_NOT_FOUND

Методы

public setControllerSuffix (смешанный тип $controllerSuffix)

Устанавливает стандартный суффикс контроллера

public setDefaultController (смешанный тип $controllerName)

Устанавливает имя стандартного контроллера

public setControllerName (смешанный тип $controllerName)

Устанавливает имя контроллера для обработки

public getControllerName ()

Получает имя последнего обработанного контроллера

public getPreviousNamespaceName ()

Получает имя предыдущего обработанного пространства имён

public getPreviousControllerName ()

Получает имя предыдущего обработанного контроллера

public getPreviousActionName ()

Получает имя предыдущего обработанного действия

protected _throwDispatchException (смешанный тип $message, [смешанный тип $exceptionCode])

Выбрасывает внутреннее исключение

protected _handleException (Exception $exception)

Обрабатывает пользовательское исключение

public getControllerClass ()

Возможные имена класса контроллера, которые будут использоваться для обработки запроса

public getLastController ()

Возвращает последний обработанный контроллер

public getActiveController ()

Возвращает активный контроллер в диспатчере

public setDI (Phalcon\DiInterface $dependencyInjector) унаследован от Phalcon\Dispatcher

Устанавливает инжектор зависимостей

public getDI () унаследован от Phalcon\Dispatcher

Возвращает внутренний инжектор зависимостей

public setEventsManager (Phalcon\Events\ManagerInterface $eventsManager) унаследован от Phalcon\Dispatcher

Устанавливает менеджер событий

public getEventsManager () унаследован от Phalcon\Dispatcher

Возвращает внутренний менеджер событий

public setActionSuffix (смешанный тип $actionSuffix) унаследован от Phalcon\Dispatcher

Устанавливает стандартный суффикс действия

public getActionSuffix () унаследован от Phalcon\Dispatcher

Получает стандартный суффикс действия

public setModuleName (смешанный тип $moduleName) унаследован от Phalcon\Dispatcher

Устанавливает модуль, в котором находится контроллер (только для информации)

public getModuleName () унаследован от Phalcon\Dispatcher

Получает модуль, в котором находится класс контроллера

public setNamespaceName (смешанный тип $namespaceName) унаследован от Phalcon\Dispatcher

Устанавливает пространство имён, в котором находится класс контроллера

public getNamespaceName () унаследован от Phalcon\Dispatcher

Получает пространство имён, которое будет добавлено к имени текущего обработчика

public setDefaultNamespace (смешанный тип $namespaceName) унаследован от Phalcon\Dispatcher

Устанавливает стандартное пространство имён

public getDefaultNamespace () унаследован от Phalcon\Dispatcher

Возвращает стандартное пространство имён

public setDefaultAction (смешанный тип $actionName) унаследован от Phalcon\Dispatcher

Устанавливает имя стандартного действия

public setActionName (смешанный тип $actionName) унаследован от Phalcon\Dispatcher

Устанавливает имя действия для обработки

public getActionName () унаследован от Phalcon\Dispatcher

Получает имя последнего обработанного действия

public setParams (массив $params) унаследован от Phalcon\Dispatcher

Устанавливает параметры действия для обработки

public getParams () унаследован от Phalcon\Dispatcher

Получает параметры действия

public setParam (смешанный тип $param, смешанный тип $value) унаследован от Phalcon\Dispatcher

Устанавливает параметр по его имени или числовому индексу

public смешанный тип getParam (смешанный тип $param, [строка | массив $filters], [смешанный тип $defaultValue]) унаследован от Phalcon\Dispatcher

Получает параметр по его имени или числовому индексу

public булево hasParam (смешанный тип $param) унаследован от Phalcon\Dispatcher

Проверяет существование параметра

public getActiveMethod () унаследован от Phalcon\Dispatcher

Возвращает текущий метод, который будет/должен быть выполнен в диспатчере

public isFinished () унаследован от Phalcon\Dispatcher

Проверяет, завершён ли цикл обработки или есть ещё контроллеры/задачи для обработки

public setReturnedValue (смешанный тип $value) унаследован от Phalcon\Dispatcher

Устанавливает последнее возвращённое значение действием вручную

public смешанный тип getReturnedValue () унаследован от Phalcon\Dispatcher

Возвращает значение, возвращённое последним обработанным действием

public setModelBinding (смешанный тип $value, [смешанный тип $cache]) унаследован от Phalcon\Dispatcher

Включает/выключает привязку моделей во время обработки

$di->set('dispatcher', function() {
    $dispatcher = new Dispatcher();

    $dispatcher->setModelBinding(true, 'cache');
    return $dispatcher;
});

public setModelBinder (Phalcon\Mvc\Model\BinderInterface $modelBinder, [смешанный тип $cache]) унаследован от Phalcon\Dispatcher

Включает привязку моделей во время обработки

$di->set('dispatcher', function() {
    $dispatcher = new Dispatcher();

    $dispatcher->setModelBinder(new Binder(), 'cache');
    return $dispatcher;
});

public getModelBinder () унаследован от Phalcon\Dispatcher

Получает привязку моделей

public object dispatch () inherited from Phalcon\Dispatcher

Передает обработку действия с учетом параметров маршрутизации

protected object _dispatch () inherited from Phalcon\Dispatcher

Передает обработку действия с учетом параметров маршрутизации

public forward (array $forward) inherited from Phalcon\Dispatcher

Передает поток выполнения другому контроллеру/действию. Диспетчеры уникальны для каждого модуля. Передача между модулями запрещена

$this->dispatcher->forward(
    [
        "controller" => "posts",
        "action"     => "index",
    ]
);

public wasForwarded () inherited from Phalcon\Dispatcher

Проверяет, было ли текущее выполняемое действие перенаправлено другим

public getHandlerClass () inherited from Phalcon\Dispatcher

Возможные имена классов, которые будут использованы для обработки запроса

public callActionMethod (mixed $handler, mixed $actionMethod, [array $params]) inherited from Phalcon\Dispatcher

...

public getBoundModels () inherited from Phalcon\Dispatcher

Возвращает связанные модели из экземпляра связующего компонента

class UserController extends Controller
{
    public function showAction(User $user)
    {
        $boundModels = $this->dispatcher->getBoundModels(); // return array with $user
    }
}

protected _resolveEmptyProperties () inherited from Phalcon\Dispatcher

Устанавливает пустые свойства в значения по умолчанию (если значения по умолчанию доступны)

© 2011–2017 Phalcon Framework Team
Licensed under the Creative Commons Attribution License 3.0.
https://docs.phalconphp.com/en/latest/api/Phalcon_Mvc_Dispatcher.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API