|
Class Phalcon\Mvc\Dispatcher¶extends abstract class Phalcon\Dispatcher implements Phalcon\Events\EventsAwareInterface, Phalcon\Di\InjectionAwareInterface, Phalcon\DispatcherInterface, Phalcon\Mvc\DispatcherInterface Dispatching is the process of taking the request object, extracting the module name, controller name, action name, and optional parameters contained in it, and then instantiating a controller and calling an action of that controller. <?php
$di = new \Phalcon\Di();
$dispatcher = new \Phalcon\Mvc\Dispatcher();
$dispatcher->setDI($di);
$dispatcher->setControllerName("posts");
$dispatcher->setActionName("index");
$dispatcher->setParams([]);
$controller = $dispatcher->dispatch();
Constants¶integer EXCEPTION_NO_DI integer EXCEPTION_CYCLIC_ROUTING integer EXCEPTION_HANDLER_NOT_FOUND integer EXCEPTION_INVALID_HANDLER integer EXCEPTION_INVALID_PARAMS integer EXCEPTION_ACTION_NOT_FOUND Methods¶public setControllerSuffix (mixed $controllerSuffix) Sets the default controller suffix public setDefaultController (mixed $controllerName) Sets the default controller name public setControllerName (mixed $controllerName) Sets the controller name to be dispatched public getControllerName () Gets last dispatched controller name public getPreviousNamespaceName () Gets previous dispatched namespace name public getPreviousControllerName () Gets previous dispatched controller name public getPreviousActionName () Gets previous dispatched action name protected _throwDispatchException (mixed $message, [mixed $exceptionCode]) Throws an internal exception protected _handleException (Exception $exception) Handles a user exception public getControllerClass () Possible controller class name that will be located to dispatch the request public getLastController () Returns the latest dispatched controller public getActiveController () Returns the active controller in the dispatcher public setDI (Phalcon\DiInterface $dependencyInjector) inherited from Phalcon\Dispatcher Sets the dependency injector public getDI () inherited from Phalcon\Dispatcher Returns the internal dependency injector public setEventsManager (Phalcon\Events\ManagerInterface $eventsManager) inherited from Phalcon\Dispatcher Sets the events manager public getEventsManager () inherited from Phalcon\Dispatcher Returns the internal event manager public setActionSuffix (mixed $actionSuffix) inherited from Phalcon\Dispatcher Sets the default action suffix public getActionSuffix () inherited from Phalcon\Dispatcher Gets the default action suffix public setModuleName (mixed $moduleName) inherited from Phalcon\Dispatcher Sets the module where the controller is (only informative) public getModuleName () inherited from Phalcon\Dispatcher Gets the module where the controller class is public setNamespaceName (mixed $namespaceName) inherited from Phalcon\Dispatcher Sets the namespace where the controller class is public getNamespaceName () inherited from Phalcon\Dispatcher Gets a namespace to be prepended to the current handler name public setDefaultNamespace (mixed $namespaceName) inherited from Phalcon\Dispatcher Sets the default namespace public getDefaultNamespace () inherited from Phalcon\Dispatcher Returns the default namespace public setDefaultAction (mixed $actionName) inherited from Phalcon\Dispatcher Sets the default action name public setActionName (mixed $actionName) inherited from Phalcon\Dispatcher Sets the action name to be dispatched public getActionName () inherited from Phalcon\Dispatcher Gets the latest dispatched action name public setParams (array $params) inherited from Phalcon\Dispatcher Sets action params to be dispatched public getParams () inherited from Phalcon\Dispatcher Gets action params public setParam (mixed $param, mixed $value) inherited from Phalcon\Dispatcher Set a param by its name or numeric index public mixed getParam (mixed $param, [string | array $filters], [mixed $defaultValue]) inherited from Phalcon\Dispatcher Gets a param by its name or numeric index public boolean hasParam (mixed $param) inherited from Phalcon\Dispatcher Check if a param exists public getActiveMethod () inherited from Phalcon\Dispatcher Returns the current method to be/executed in the dispatcher public isFinished () inherited from Phalcon\Dispatcher Checks if the dispatch loop is finished or has more pendent controllers/tasks to dispatch public setReturnedValue (mixed $value) inherited from Phalcon\Dispatcher Sets the latest returned value by an action manually public mixed getReturnedValue () inherited from Phalcon\Dispatcher Returns value returned by the latest dispatched action public setModelBinding (mixed $value, [mixed $cache]) inherited from Phalcon\Dispatcher Enable/Disable model binding during dispatch <?php
$di->set('dispatcher', function() {
$dispatcher = new Dispatcher();
$dispatcher->setModelBinding(true, 'cache');
return $dispatcher;
});
public setModelBinder (Phalcon\Mvc\Model\BinderInterface $modelBinder, [mixed $cache]) inherited from Phalcon\Dispatcher Enable model binding during dispatch <?php
$di->set('dispatcher', function() {
$dispatcher = new Dispatcher();
$dispatcher->setModelBinder(new Binder(), 'cache');
return $dispatcher;
});
public getModelBinder () inherited from Phalcon\Dispatcher Gets model binder public object dispatch () inherited from Phalcon\Dispatcher Dispatches a handle action taking into account the routing parameters protected object _dispatch () inherited from Phalcon\Dispatcher Dispatches a handle action taking into account the routing parameters public forward (array $forward) inherited from Phalcon\Dispatcher Forwards the execution flow to another controller/action Dispatchers are unique per module. Forwarding between modules is not allowed <?php
$this->dispatcher->forward(
[
"controller" => "posts",
"action" => "index",
]
);
public wasForwarded () inherited from Phalcon\Dispatcher Check if the current executed action was forwarded by another one public getHandlerClass () inherited from Phalcon\Dispatcher Possible class name that will be located to dispatch the request public callActionMethod (mixed $handler, mixed $actionMethod, [array $params]) inherited from Phalcon\Dispatcher ... public getBoundModels () inherited from Phalcon\Dispatcher Returns bound models from binder instance <?php
class UserController extends Controller
{
public function showAction(User $user)
{
$boundModels = $this->dispatcher->getBoundModels(); // return array with $user
}
}
protected _resolveEmptyProperties () inherited from Phalcon\Dispatcher Set empty properties to their defaults (where defaults are available) |