Methods summary
public static
MvcCore\Controller
|
#
CreateInstance( )
Return always new instance of statically called class, no singleton.
Always called from \MvcCore::DispatchControllerAction() before controller is dispatched,
or always called in \MvcCore\Controller::autoInitMembers(); in base controller initialization.
This is place where to customize any controller creation process,
before it's created by MvcCore framework to dispatch it.
Return always new instance of statically called class, no singleton.
Always called from \MvcCore::DispatchControllerAction() before controller is dispatched,
or always called in \MvcCore\Controller::autoInitMembers(); in base controller initialization.
This is place where to customize any controller creation process,
before it's created by MvcCore framework to dispatch it.
Returns
|
public static
MvcCore\Controller |null
|
#
GetCallerControllerInstance( )
Try to determinate \MvcCore\Controller instance from debug_bactrace() ,
where was form created, if no form instance given into form constructor.
If no previous controller instance founded, NULL is returned.
Try to determinate \MvcCore\Controller instance from debug_bactrace() ,
where was form created, if no form instance given into form constructor.
If no previous controller instance founded, NULL is returned.
Returns
|
public static
|
#
Redirect( string $location = '', integer $code = \MvcCore\IResponse::SEE_OTHER, string|null $reason = NULL )
Redirect client browser to another place by "Location: ..."
header and call \MvcCore\Application::GetInstance()->Terminate(); .
Redirect client browser to another place by "Location: ..."
header and call \MvcCore\Application::GetInstance()->Terminate(); .
Parameters
- $location
- $code
- $reason
- Any optional text header for reason why.
|
public
|
#
Dispatch( string $actionName = "IndexAction" )
Dispatching controller life cycle by given action.
This is INTERNAL, not TEMPLATE method, internally
called in \MvcCore::DispatchControllerAction(); .
Call this immediately after calling controller methods:
- \MvcCore\Controller::__construct()
- \MvcCore\Controller::SetApplication($application)
- \MvcCore\Controller::SetEnvironment($environment)
- \MvcCore\Controller::SetRequest($request)
- \MvcCore\Controller::SetResponse($response)
- \MvcCore\Controller::SetRouter($router)
This function automatically complete (through controller lifecycle)
protected \MvcCore\Response object with response headers and content,
which you can send to client browser by method
\MvcCore\Controller::Terminate() or which you can store
anywhere in cache to use it later etc.
Dispatching controller life cycle by given action.
This is INTERNAL, not TEMPLATE method, internally
called in \MvcCore::DispatchControllerAction(); .
Call this immediately after calling controller methods:
- \MvcCore\Controller::__construct()
- \MvcCore\Controller::SetApplication($application)
- \MvcCore\Controller::SetEnvironment($environment)
- \MvcCore\Controller::SetRequest($request)
- \MvcCore\Controller::SetResponse($response)
- \MvcCore\Controller::SetRouter($router)
This function automatically complete (through controller lifecycle)
protected \MvcCore\Response object with response headers and content,
which you can send to client browser by method
\MvcCore\Controller::Terminate() or which you can store
anywhere in cache to use it later etc.
Parameters
- $actionName
PHP code action name in PascalCase.
This value is used to call your desired function
in controller without any change.
|
public
|
#
Init( )
TEMPLATE method. Call parent::Init(); at the method very beginning.
Application controllers initialization.
This is best time to initialize language, locale, session etc.
There is also called auto initialization processing - instance creation
on each controller class member implementing \MvcCore\IController
and marked in doc comments as @autoInit .
then there is of course called \MvcCore\Controller::Init(); method on each
automatically created sub-controller.
TEMPLATE method. Call parent::Init(); at the method very beginning.
Application controllers initialization.
This is best time to initialize language, locale, session etc.
There is also called auto initialization processing - instance creation
on each controller class member implementing \MvcCore\IController
and marked in doc comments as @autoInit .
then there is of course called \MvcCore\Controller::Init(); method on each
automatically created sub-controller.
|
public
|
#
PreDispatch( )
TEMPLATE method. Call parent::PreDispatch(); at the method very beginning.
Application pre render common action - always used in application controllers.
This is best time to define any common properties or common view properties,
which are the same for multiple actions in controller etc.
There is also called \MvcCore\Controller::PreDispatch(); method on each sub-controller.
TEMPLATE method. Call parent::PreDispatch(); at the method very beginning.
Application pre render common action - always used in application controllers.
This is best time to define any common properties or common view properties,
which are the same for multiple actions in controller etc.
There is also called \MvcCore\Controller::PreDispatch(); method on each sub-controller.
|
public
string|string[]|integer|int[]|boolean|bool[]|array|mixed
|
#
GetParam( string $name = "", string|array|boolean $pregReplaceAllowedChars = "a-zA-Z0-9_/\-\.\@", mixed $ifNullValue,…, string $targetType,… )
Get param value from $_GET , $_POST or php://input , filtered by
"rule to keep defined characters only", defined in second argument (by preg_replace() ).
Place into second argument only char groups you want to keep.
Shortcut for: \MvcCore\Request::GetParam();
Get param value from $_GET , $_POST or php://input , filtered by
"rule to keep defined characters only", defined in second argument (by preg_replace() ).
Place into second argument only char groups you want to keep.
Shortcut for: \MvcCore\Request::GetParam();
Parameters
- $name
- Parameter string name.
- $pregReplaceAllowedChars
- If String - list of regular expression characters to only keep, if array -
preg_replace() pattern and reverse, if FALSE , raw value is returned.
- $ifNullValue,…
- Default value returned if given param name is null.
- $targetType,…
- Target type to retype param value or default if-null value. If param is an array, every param item will be retyped into given target type.
Returns
string|string[]|integer|int[]|boolean|bool[]|array|mixed
|
public
MvcCore\Application
|
#
GetApplication( )
Get current application singleton instance object as reference.
Get current application singleton instance object as reference.
Returns
|
public
MvcCore\Controller
|
#
SetApplication( MvcCore\IApplication $application )
Sets up \MvcCore\Application singleton object.
This is INTERNAL, not TEMPLATE method, internally called in
\MvcCore::DispatchControllerAction() before controller is dispatched.
Usually call this as soon as possible after controller creation.
Sets up \MvcCore\Application singleton object.
This is INTERNAL, not TEMPLATE method, internally called in
\MvcCore::DispatchControllerAction() before controller is dispatched.
Usually call this as soon as possible after controller creation.
Parameters
Returns
|
public
MvcCore\Environment
|
#
GetEnvironment( )
Get environment object to detect and manage environment name.
Get environment object to detect and manage environment name.
Returns
|
public
MvcCore\Request
|
#
GetRequest( )
Get current application request object as reference.
Get current application request object as reference.
Returns
|
public
string
|
#
GetControllerName( )
Get requested controller name - "dashed-controller-name" .
Get requested controller name - "dashed-controller-name" .
Returns
string
|
public
MvcCore\Controller
|
#
SetControllerName( string $controllerName )
Set requested controller name - "dashed-controller-name" .
Set requested controller name - "dashed-controller-name" .
Parameters
Returns
|
public
string
|
#
GetActionName( )
Get requested action name - "dashed-action-name" .
Get requested action name - "dashed-action-name" .
Returns
string
|
public
MvcCore\Controller
|
#
SetActionName( string $actionName )
Set requested action name - "dashed-action-name" .
Set requested action name - "dashed-action-name" .
Parameters
Returns
|
public
MvcCore\Controller
|
#
SetEnvironment( MvcCore\IEnvironment $environment )
Set environment object to detect and manage environment name.
This is INTERNAL, not TEMPLATE method.
Set environment object to detect and manage environment name.
This is INTERNAL, not TEMPLATE method.
Parameters
Returns
|
public
MvcCore\Controller
|
#
SetRequest( MvcCore\IRequest $request )
Sets up \MvcCore\Request object and other protected properties.
This is INTERNAL, not TEMPLATE method, internally called in
\MvcCore::DispatchControllerAction(); before controller is dispatched.
Usually call this as soon as possible after controller creation
to set up following controller properties:
- \MvcCore\Controller::$request
- \MvcCore\Controller::$controllerName
- \MvcCore\Controller::$actionName
- \MvcCore\Controller::$ajax
Sets up \MvcCore\Request object and other protected properties.
This is INTERNAL, not TEMPLATE method, internally called in
\MvcCore::DispatchControllerAction(); before controller is dispatched.
Usually call this as soon as possible after controller creation
to set up following controller properties:
- \MvcCore\Controller::$request
- \MvcCore\Controller::$controllerName
- \MvcCore\Controller::$actionName
- \MvcCore\Controller::$ajax
Parameters
Returns
|
public
MvcCore\Response
|
#
GetResponse( )
Get current application response object as reference.
Get current application response object as reference.
Returns
|
public
MvcCore\Controller
|
#
SetResponse( MvcCore\IResponse $response )
Sets up \MvcCore\Response object.
This is INTERNAL, not TEMPLATE method, internally called in
\MvcCore::DispatchControllerAction() before controller is dispatched.
Usually call this as soon as possible after controller creation.
Sets up \MvcCore\Response object.
This is INTERNAL, not TEMPLATE method, internally called in
\MvcCore::DispatchControllerAction() before controller is dispatched.
Usually call this as soon as possible after controller creation.
Parameters
Returns
|
public
MvcCore\Router
|
#
GetRouter( )
Get current application router object as reference.
Get current application router object as reference.
Returns
|
public
MvcCore\Controller
|
#
SetRouter( MvcCore\IRouter $router )
Sets up \MvcCore\Router object.
This is INTERNAL, not TEMPLATE method, internally called in
\MvcCore::DispatchControllerAction() before controller is dispatched.
Usually call this as soon as possible after controller creation.
Sets up \MvcCore\Router object.
This is INTERNAL, not TEMPLATE method, internally called in
\MvcCore::DispatchControllerAction() before controller is dispatched.
Usually call this as soon as possible after controller creation.
Parameters
Returns
|
public
boolean
|
#
IsAjax( )
Get boolean about AJAX request.
TRUE if request is requested from browser by XmlHttpRequest object
with http header: X-Requested-With: AnyJavascriptFrameworkName , FALSE otherwise.
Get boolean about AJAX request.
TRUE if request is requested from browser by XmlHttpRequest object
with http header: X-Requested-With: AnyJavascriptFrameworkName , FALSE otherwise.
Returns
boolean
|
public
MvcCore\Controller
|
#
SetIsAjax( boolean $ajax )
Set boolean about AJAX request.
TRUE if request is requested from browser by XmlHttpRequest object
with http header: X-Requested-With: AnyJavascriptFrameworkName , FALSE otherwise.
Set boolean about AJAX request.
TRUE if request is requested from browser by XmlHttpRequest object
with http header: X-Requested-With: AnyJavascriptFrameworkName , FALSE otherwise.
Parameters
Returns
|
public
MvcCore\Model
|
#
GetUser( )
Get user model instance. Template method.
Get user model instance. Template method.
Returns
|
public
MvcCore\Controller
|
#
SetUser( MvcCore\Model $user )
Set user model instance. Template method.
Set user model instance. Template method.
Parameters
Returns
|
public
MvcCore\View |null
|
#
GetView( )
Return current controller view object if any.
Before \MvcCore\Controller::PreDispatch(); is called
in controller lifecycle, this property will be still NULL .
Return current controller view object if any.
Before \MvcCore\Controller::PreDispatch(); is called
in controller lifecycle, this property will be still NULL .
Returns
|
public
MvcCore\Controller
|
#
SetView( MvcCore\IView $view )
Set current controller view object.
Set current controller view object.
Parameters
Returns
|
public
integer
|
#
GetRenderMode( )
Get rendering mode switch to render views in two ways:
\MvcCore\IView::RENDER_WITH_OB_FROM_ACTION_TO_LAYOUT :
- Render action view first into output buffer, then render layout view
wrapped around rendered action view string also into output buffer.
Then set up rendered content from output buffer into response object
and then send HTTP headers and content after all.
\MvcCore\IView::RENDER_WITHOUT_OB_CONTINUOUSLY :
- Special rendering mode to continuously sent larger data to client.
Render layout view and render action view together inside it without
output buffering. There is not used reponse object body property for
this rendering mode. Http headers are sent before view rendering.
Get rendering mode switch to render views in two ways:
\MvcCore\IView::RENDER_WITH_OB_FROM_ACTION_TO_LAYOUT : - Render action view first into output buffer, then render layout view wrapped around rendered action view string also into output buffer. Then set up rendered content from output buffer into response object and then send HTTP headers and content after all.
\MvcCore\IView::RENDER_WITHOUT_OB_CONTINUOUSLY : - Special rendering mode to continuously sent larger data to client. Render layout view and render action view together inside it without output buffering. There is not used reponse object body property for this rendering mode. Http headers are sent before view rendering.
Returns
integer
|
public
MvcCore\Controller
|
#
SetRenderMode( integer $renderMode = \MvcCore\IView::RENDER_WITH_OB_FROM_ACTION_TO_LAYOUT )
Set rendering mode switch to render views in two ways:
\MvcCore\IView::RENDER_WITH_OB_FROM_ACTION_TO_LAYOUT :
- Render action view first into output buffer, then render layout view
wrapped around rendered action view string also into output buffer.
Then set up rendered content from output buffer into response object
and then send HTTP headers and content after all.
\MvcCore\IView::RENDER_WITHOUT_OB_CONTINUOUSLY :
- Special rendering mode to continuously sent larger data to client.
Render layout view and render action view together inside it without
output buffering. There is not used reponse object body property for
this rendering mode. Http headers are sent before view rendering.
Set rendering mode switch to render views in two ways:
\MvcCore\IView::RENDER_WITH_OB_FROM_ACTION_TO_LAYOUT : - Render action view first into output buffer, then render layout view wrapped around rendered action view string also into output buffer. Then set up rendered content from output buffer into response object and then send HTTP headers and content after all.
\MvcCore\IView::RENDER_WITHOUT_OB_CONTINUOUSLY : - Special rendering mode to continuously sent larger data to client. Render layout view and render action view together inside it without output buffering. There is not used reponse object body property for this rendering mode. Http headers are sent before view rendering.
Parameters
Returns
|
public
string
|
#
GetLayout( )
Get layout name to render html wrapper around rendered action view.
Example: "front" | "admin" | "account"... .
Get layout name to render html wrapper around rendered action view.
Example: "front" | "admin" | "account"... .
Returns
string
|
public
MvcCore\Controller
|
#
SetLayout( string $layout = '' )
Set layout name to render html wrapper around rendered action view.
Example: "front" | "admin" | "account"... .
Set layout name to render html wrapper around rendered action view.
Example: "front" | "admin" | "account"... .
Parameters
Returns
|
public
string|null
|
#
GetViewScriptsPath( )
Get customized sub-controllers template path value. NULL by default.
You need to set into this property any custom string as relative path to
your template file placed somewhere in /App/Views/Scripts/ .
For example if you want to render template file placed in:
/App/Views/Scripts/something/completely/custom.phtml , you need to set
up this property to value something/completely and then there is
necessary to render your template only by calling controller rendering by:
$subcontrollerInstance->Render('custom');
Get customized sub-controllers template path value. NULL by default.
You need to set into this property any custom string as relative path to
your template file placed somewhere in /App/Views/Scripts/ .
For example if you want to render template file placed in:
/App/Views/Scripts/something/completely/custom.phtml , you need to set
up this property to value something/completely and then there is
necessary to render your template only by calling controller rendering by:
$subcontrollerInstance->Render('custom');
Returns
string|null
|
public
MvcCore\Controller
|
#
SetViewScriptsPath( string|null $viewScriptsPath = NULL )
Get customized sub-controllers template path value. NULL by default.
You need to set into this property any custom string as relative path to
your template file placed somewhere in /App/Views/Scripts/ .
For example if you want to render template file placed in:
/App/Views/Scripts/something/completely/custom.phtml , you need to set
up this property to value something/completely and then there is
necessary to render your template only by calling controller rendering by:
$subcontrollerInstance->Render('custom');
Get customized sub-controllers template path value. NULL by default.
You need to set into this property any custom string as relative path to
your template file placed somewhere in /App/Views/Scripts/ .
For example if you want to render template file placed in:
/App/Views/Scripts/something/completely/custom.phtml , you need to set
up this property to value something/completely and then there is
necessary to render your template only by calling controller rendering by:
$subcontrollerInstance->Render('custom');
Parameters
Returns
|
public
boolean
|
#
GetViewEnabled( )
Get TRUE if view is automatically created in base controller PreDispatch()
method and if view is automatically rendered with wrapping layout view
around after controller action is called. Or get FALSE if no view
automatically rendered. Default value is TRUE for all non-ajax requests.
Get TRUE if view is automatically created in base controller PreDispatch()
method and if view is automatically rendered with wrapping layout view
around after controller action is called. Or get FALSE if no view
automatically rendered. Default value is TRUE for all non-ajax requests.
Returns
boolean
|
public
MvcCore\Controller
|
#
SetViewEnabled( $viewEnabled = TRUE )
Set TRUE if view object will be automatically created in base controller
PreDispatch() method and if view will be automatically rendered with wrapping
layout view around after controller action is called. Or set FALSE
otherwise to not render any view. Default value is TRUE for all non-ajax requests.
Set TRUE if view object will be automatically created in base controller
PreDispatch() method and if view will be automatically rendered with wrapping
layout view around after controller action is called. Or set FALSE
otherwise to not render any view. Default value is TRUE for all non-ajax requests.
Returns
|
public
MvcCore\Controller
|
#
AddChildController( MvcCore\IController $controller, string|integer $index = NULL )
- Register child controller to process dispatching on it later.
- This method is always called INTERNALLY, but you can use it for custom purposes.
- This method automatically assigns into child controller(s) properties from parent:
\MvcCore\Controller::$_parentController
\MvcCore\Controller::$request
\MvcCore\Controller::$response
\MvcCore\Controller::$router
\MvcCore\Controller::$layout
\MvcCore\Controller::$viewEnabled
\MvcCore\Controller::$user
- Register child controller to process dispatching on it later.
- This method is always called INTERNALLY, but you can use it for custom purposes.
- This method automatically assigns into child controller(s) properties from parent: -
\MvcCore\Controller::$_parentController - \MvcCore\Controller::$request - \MvcCore\Controller::$response - \MvcCore\Controller::$router - \MvcCore\Controller::$layout - \MvcCore\Controller::$viewEnabled - \MvcCore\Controller::$user
Parameters
Returns
|
public
MvcCore\Controller |null
|
#
GetParentController( )
Get parent controller instance if any.
Method for child controllers. This method returns
NULL for top most parent controller instance.
Get parent controller instance if any.
Method for child controllers. This method returns
NULL for top most parent controller instance.
Returns
|
public
MvcCore\Controller
|
#
SetParentController( MvcCore\IController $parentController = NULL )
Set parent controller instance
or NULL for "top most parent" controller.
Method for child controllers.
Set parent controller instance
or NULL for "top most parent" controller.
Method for child controllers.
Parameters
Returns
|
public
MvcCore\Controller[]
|
#
GetChildControllers( )
Get all child controllers array, indexed by
sub-controller property string name or by
custom string name or by custom numeric index.
Get all child controllers array, indexed by
sub-controller property string name or by
custom string name or by custom numeric index.
Returns
|
public
MvcCore\Controller
|
#
SetChildControllers( array $childControllers = [] )
Set all child controllers array, indexed by
sub-controller property string name or by
custom string name or by custom numeric index.
This method is dangerous, because it replace all
previous child controllers with given child controllers.
If you want only to add child controller, use method:
\MvcCore\Controller::AddChildController();` instead.
Set all child controllers array, indexed by
sub-controller property string name or by
custom string name or by custom numeric index.
This method is dangerous, because it replace all
previous child controllers with given child controllers.
If you want only to add child controller, use method:
\MvcCore\Controller::AddChildController();` instead.
Parameters
Returns
|
public
MvcCore\Controller
|
#
GetChildController( string|integer $index = NULL )
Get child controller at specific index.
Sub-controller index should be string by parent controller
property name or custom string name or numeric index.
Get child controller at specific index.
Sub-controller index should be string by parent controller
property name or custom string name or numeric index.
Parameters
Returns
|
public
MvcCore\Config |null
|
#
GetConfig( string $appRootRelativePath )
Get (optionally cached) config INI file as stdClass or array ,
placed relatively from application document root.
Get (optionally cached) config INI file as stdClass or array ,
placed relatively from application document root.
Parameters
- $appRootRelativePath
- Any config relative path like
'/%appPath%/website.ini' .
Returns
|
public
MvcCore\Config |null
|
#
GetSystemConfig( )
Get (optionally cached) system config INI file as stdClass or array ,
placed by default in: "/App/config.ini" .
Get (optionally cached) system config INI file as stdClass or array ,
placed by default in: "/App/config.ini" .
Returns
|
public
|
#
AssetAction( )
Return small assets content with proper headers
in single file application mode and immediately exit.
Return small assets content with proper headers
in single file application mode and immediately exit.
Throws
Exception If file path is not allowed (500) or file not found (404).
|
public
string
|
#
__toString( )
Rendering process alias for \MvcCore\Controller::Render(); .
Rendering process alias for \MvcCore\Controller::Render(); .
Returns
string
|
public
string
|
#
Render( string $controllerOrActionNameDashed = NULL, string $actionNameDashed = NULL )
- This method is called INTERNALLY in lifecycle dispatching process,
but you can use it sooner or in any different time for custom render purposes.
- Render prepared controller/action view in path by default:
"/App/Views/Scripts/<ctrl-dashed-name>/<action-dashed-name>.phtml" .
- If controller has no other parent controller, render layout view around action view.
- For top most parent controller - store rendered action and layout view in response object and return empty string.
- For child controller - return rendered action view as string.
- This method is called INTERNALLY in lifecycle dispatching process, but you can use it sooner or in any different time for custom render purposes.
- Render prepared controller/action view in path by default:
"/App/Views/Scripts/<ctrl-dashed-name>/<action-dashed-name>.phtml" .
- If controller has no other parent controller, render layout view around action view.
- For top most parent controller - store rendered action and layout view in response object and return empty string.
- For child controller - return rendered action view as string.
Parameters
- $controllerOrActionNameDashed
- $actionNameDashed
Returns
string
|
public
|
#
HtmlResponse( string $output = "", boolean $terminate = TRUE )
Store rendered HTML output inside \MvcCore\Controller::$response
to send into client browser later in \MvcCore\Application::GetInstance()->Terminate(); .
Store rendered HTML output inside \MvcCore\Controller::$response
to send into client browser later in \MvcCore\Application::GetInstance()->Terminate(); .
Parameters
|
public
|
#
XmlResponse( string $output = "", boolean $terminate = TRUE )
Store rendered XML output inside \MvcCore\Controller::$response
to send into client browser later in \MvcCore\Application::GetInstance()->Terminate(); .
Store rendered XML output inside \MvcCore\Controller::$response
to send into client browser later in \MvcCore\Application::GetInstance()->Terminate(); .
Parameters
|
public
|
#
TextResponse( string $output = '', boolean $terminate = TRUE )
Store rendered text output inside \MvcCore\Controller::$response
to send into client browser later in \MvcCore\Application::GetInstance()->Terminate(); .
Store rendered text output inside \MvcCore\Controller::$response
to send into client browser later in \MvcCore\Application::GetInstance()->Terminate(); .
Parameters
|
public
|
#
JsonResponse( mixed $data = NULL, boolean $terminate = TRUE )
Serialize any PHP value into JSON string and store
it inside \MvcCore\Controller::$response to send it
into client browser later in \MvcCore\Application::GetInstance()->Terminate(); .
Serialize any PHP value into JSON string and store
it inside \MvcCore\Controller::$response to send it
into client browser later in \MvcCore\Application::GetInstance()->Terminate(); .
Parameters
Throws
Exception JSON encoding error.
|
public
|
#
JsonpResponse( mixed $data = NULL, string $callbackParamName = 'callback', boolean $terminate = TRUE )
Serialize any PHP value into JSON string , wrap around prepared public
javascript function in target window sent as $_GET param under
variable $callbackParamName (allowed chars: a-zA-Z0-9\.\-_\$ ) and
store it inside \MvcCore\Controller::$response to send it
into client browser later in \MvcCore\Application::GetInstance()->Terminate(); .
Serialize any PHP value into JSON string , wrap around prepared public
javascript function in target window sent as $_GET param under
variable $callbackParamName (allowed chars: a-zA-Z0-9\.\-_\$ ) and
store it inside \MvcCore\Controller::$response to send it
into client browser later in \MvcCore\Application::GetInstance()->Terminate(); .
Parameters
- $data
- $callbackParamName
- $terminate
Throws
Exception JSON encoding error.
|
public
string
|
#
Url( string $controllerActionOrRouteName = 'Index:Index', array $params = [] )
Generates url:
- By "Controller:Action" name and params array
(for routes configuration when routes array has keys with "Controller:Action" strings
and routes has not controller name and action name defined inside).
- By route name and params array
(route name is key in routes configuration array, should be any string
but routes must have information about controller name and action name inside).
Result address (url string) should have two forms:
- Nice rewritten URL by routes configuration
(for apps with URL rewrite support (Apache .htaccess or IIS URL rewrite module)
and when first param is key in routes configuration array).
- For all other cases is URL form like: "index.php?controller=ctrlName&action=actionName"
(when first param is not founded in routes configuration array).
Generates url:
- By "Controller:Action" name and params array (for routes configuration when routes array has keys with "Controller:Action" strings and routes has not controller name and action name defined inside).
- By route name and params array (route name is key in routes configuration array, should be any string but routes must have information about controller name and action name inside).
Result address (url string) should have two forms:
- Nice rewritten URL by routes configuration (for apps with URL rewrite support (Apache .htaccess or IIS URL rewrite module) and when first param is key in routes configuration array).
- For all other cases is URL form like: "index.php?controller=ctrlName&action=actionName" (when first param is not founded in routes configuration array).
Parameters
- $controllerActionOrRouteName
- Should be
"Controller:Action" combination or just any route name as custom specific string.
- $params
- Optional, array with params, key is param name, value is param value.
Returns
string
|
public
string
|
#
AssetUrl( string $path = '' )
Return asset path or single file mode URL for small assets
handled by internal controller action "Controller:Asset" .
Return asset path or single file mode URL for small assets
handled by internal controller action "Controller:Asset" .
Parameters
Returns
string
|
public
MvcCore\Session
|
#
GetSessionNamespace( mixed $name = \MvcCore\ISession::DEFAULT_NAMESPACE_NAME )
Alias for \MvcCore\Session::GetNamespace($name);
but called with configured session core class name.
Alias for \MvcCore\Session::GetNamespace($name);
but called with configured session core class name.
Parameters
Returns
|
public
|
#
RenderError( string $exceptionMessage = '' )
Render error controller and error action
for any dispatch exception or error as
rendered html response or as plain text response.
Render error controller and error action
for any dispatch exception or error as
rendered html response or as plain text response.
Parameters
|
public
|
#
RenderNotFound( )
Render not found controller and not found action
for any dispatch exception with code 404 as
rendered html response or as plain text response.
Render not found controller and not found action
for any dispatch exception with code 404 as
rendered html response or as plain text response.
|
public
string
|
#
GetViewScriptPath( string $controllerOrActionNameDashed = NULL, string $actionNameDashed = NULL )
Complete view script path by given controller and action or only by given action rendering arguments.
Complete view script path by given controller and action or only by given action rendering arguments.
Parameters
- $controllerOrActionNameDashed
- $actionNameDashed
Returns
string
|
public
|
#
Terminate( )
Terminate request.
- Send headers if possible.
- Echo response body.
- Write session.
This method is always called INTERNALLY after controller
lifecycle has been dispatched. But you can use it any
time sooner for custom purposes.
This method is only shortcut for: \MvcCore\Application::GetInstance()->Terminate(); .
Terminate request.
- Send headers if possible.
- Echo response body.
- Write session.
This method is always called INTERNALLY after controller
lifecycle has been dispatched. But you can use it any
time sooner for custom purposes.
This method is only shortcut for: \MvcCore\Application::GetInstance()->Terminate(); .
|