Controller/Action/Helper/ViewRenderer.php

Show: PublicProtectedPrivateinherited
Table of Contents
Zend Framework
LICENSE This source file is subject to the new BSD license that is bundled with this package in the file LICENSE.txt. It is also available through the world-wide-web at this URL: http://framework.zend.com/license/new-bsd If you did not receive a copy of the license and are unable to obtain it through the world-wide-web, please send an email to license@zend.com so we can send you a copy immediately.
Category
Zend  
Copyright
Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com)  
License
New BSD License  
Package
Zend_Controller  
Subpackage
Zend_Controller_Action_Helper  
Version
$Id$  

\Zend_Controller_Action_Helper_ViewRenderer

Package: Zend_Controller\Zend_Controller_Action_Helper
View script integration
Zend_Controller_Action_Helper_ViewRenderer provides transparent view integration for action controllers. It allows you to create a view object once, and populate it throughout all actions. Several global options may be set: - noController: if set true, render() will not look for view scripts in subdirectories named after the controller - viewSuffix: what view script filename suffix to use The helper autoinitializes the action controller view preDispatch(). It determines the path to the class file, and then determines the view base directory from there. It also uses the module name as a class prefix for helpers and views such that if your module name is 'Search', it will set the helper class prefix to 'Search_View_Helper' and the filter class prefix to ; 'Search_View_Filter'. Usage: // In your bootstrap: Zend_Controller_Action_HelperBroker::addHelper(new Zend_Controller_Action_Helper_ViewRenderer()); // In your action controller methods: $viewHelper = $this->_helper->getHelper('view'); // Don't use controller subdirectories $viewHelper->setNoController(true); // Specify a different script to render: $this->_helper->viewRenderer('form');
Parent(s)
\Zend_Controller_Action_Helper_Abstract
Copyright
Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com)  
License
New BSD License  
Uses
 

Properties

>VPropertyprotectedarray $_delimiters
Word delimiters
Details
Type
array
>VPropertyprotected\Zend_Filter_Inflector $_inflector
>VPropertyprotectedstring $_inflectorTarget = ''
Inflector target
Default value''Details
Type
string
>VPropertyprotectedstring $_moduleDir = ''
Current module directory
Default value''Details
Type
string
>VPropertyprotectedboolean $_neverController = false
Whether or not to autorender using controller name as subdirectory; global setting (not reset at next invocation)
Default valuefalseDetails
Type
boolean
>VPropertyprotectedboolean $_neverRender = false
Whether or not to autorender postDispatch; global setting (not reset at next invocation)
Default valuefalseDetails
Type
boolean
>VPropertyprotectedboolean $_noController = false
Whether or not to use a controller name as a subdirectory when rendering
Default valuefalseDetails
Type
boolean
>VPropertyprotectedboolean $_noRender = false
Whether or not to autorender postDispatch; per controller/action setting (reset at next invocation)
Default valuefalseDetails
Type
boolean
>VPropertyprotectedstring|array $_pathDelimiters
Characters representing path delimiters in the controller
Details
Type
string | array
>VPropertyprotectedstring $_responseSegment = null
Which named segment of the response to utilize
Default valuenullDetails
Type
string
>VPropertyprotectedstring $_scriptAction = null
Which action view script to render
Default valuenullDetails
Type
string
>VPropertyprotectedstring $_viewBasePathSpec = ':moduleDir/views'
View object basePath
Default value':moduleDir/views'Details
Type
string
>VPropertyprotectedstring $_viewScriptPathNoControllerSpec = ':action.:suffix'
View script path specification string, minus controller segment
Default value':action.:suffix'Details
Type
string
>VPropertyprotectedstring $_viewScriptPathSpec = ':controller/:action.:suffix'
View script path specification string
Default value':controller/:action.:suffix'Details
Type
string
>VPropertyprotectedstring $_viewSuffix = 'phtml'
View script suffix
Default value'phtml'Details
Type
string
>VPropertypublic\Zend_View_Interface $view

Methods

methodpublic__clone() : void

Clone - also make sure the view is cloned.

methodpublic__construct(\Zend_View_Interface $view = null, array $options = array()) : void

Constructor

Optionally set view object and options.
Parameters
NameTypeDescription
$view\Zend_View_Interface
$optionsarray
methodprotected_generateDefaultPrefix() : string

Generate a class prefix for helper and filter classes

Returns
TypeDescription
string
methodprotected_getBasePath() : string

Retrieve base path based on location of current action controller

Returns
TypeDescription
string
methodprotected_getModuleDir() : string

Get internal module directory representation

Returns
TypeDescription
string
methodprotected_setInflectorTarget(string $target) : void

Set inflector target

Parameters
NameTypeDescription
$targetstring
methodprotected_setModuleDir(string $dir) : void

Set internal module directory representation

Parameters
NameTypeDescription
$dirstring
methodprotected_setOptions(array $options) : \Zend_Controller_Action_Helper_ViewRenderer

Set options

Parameters
NameTypeDescription
$optionsarray
Returns
TypeDescription
\Zend_Controller_Action_Helper_ViewRendererProvides a fluent interface
methodprotected_shouldRender() : boolean

Should the ViewRenderer render a view script?

Returns
TypeDescription
boolean
methodprotected_translateSpec(array $vars = array()) : string

Inflect based on provided vars

Allowed variables are: - :moduleDir - current module directory - :module - current module name - :controller - current controller name - :action - current action name - :suffix - view script file suffix
Parameters
NameTypeDescription
$varsarray
Returns
TypeDescription
string
methodpublicdirect(string $action = null, string $name = null, boolean $noController = null) : void

Use this helper as a method; proxies to setRender()

Parameters
NameTypeDescription
$actionstring
$namestring
$noControllerboolean
methodpublicgetInflector() : \Zend_Filter_Inflector

Get inflector

Returns
TypeDescription
\Zend_Filter_Inflector
methodpublicgetModule() : string

Get current module name

Returns
TypeDescription
string
methodpublicgetModuleDirectory() : string

Get module directory

Returns
TypeDescription
string
Throws
ExceptionDescription
\Zend_Controller_Action_Exception
methodpublicgetNeverController() : boolean

Retrieve neverController flag value

Returns
TypeDescription
boolean
methodpublicgetNeverRender() : boolean

Retrieve neverRender flag value

Returns
TypeDescription
boolean
methodpublicgetNoController() : boolean

Retrieve noController flag value

Returns
TypeDescription
boolean
methodpublicgetNoRender() : boolean

Retrieve noRender flag value

Returns
TypeDescription
boolean
methodpublicgetResponseSegment() : string

Retrieve named response segment name

Returns
TypeDescription
string
methodpublicgetScriptAction() : string

Retrieve view script name

Returns
TypeDescription
string
methodpublicgetViewBasePathSpec() : string

Retrieve the current view basePath specification string

Returns
TypeDescription
string
methodpublicgetViewScript(string $action = null, array $vars = array()) : string

Get a view script based on an action and/or other variables

Uses values found in current request if no values passed in $vars. If {@link $_noController} is set, uses {@link $_viewScriptPathNoControllerSpec}; otherwise, uses {@link $_viewScriptPathSpec}.
Parameters
NameTypeDescription
$actionstring
$varsarray
Returns
TypeDescription
string
methodpublicgetViewScriptPathNoControllerSpec() : string

Retrieve the current view script path specification string (no controller variant)

Returns
TypeDescription
string
methodpublicgetViewScriptPathSpec() : string

Retrieve the current view script path specification string

Returns
TypeDescription
string
methodpublicgetViewSuffix() : string

Get view script suffix

Returns
TypeDescription
string
methodpublicinit() : void

init - initialize view

methodpublicinitView(string $path = null, string $prefix = null, array $options = array()) : void

Initialize the view object

$options may contain the following keys: - neverRender - flag dis/enabling postDispatch() autorender (affects all subsequent calls) - noController - flag indicating whether or not to look for view scripts in subdirectories named after the controller - noRender - flag indicating whether or not to autorender postDispatch() - responseSegment - which named response segment to render a view script to - scriptAction - what action script to render - viewBasePathSpec - specification to use for determining view base path - viewScriptPathSpec - specification to use for determining view script paths - viewScriptPathNoControllerSpec - specification to use for determining view script paths when noController flag is set - viewSuffix - what view script filename suffix to use
Parameters
NameTypeDescription
$pathstring
$prefixstring
$optionsarray
Throws
ExceptionDescription
\Zend_Controller_Action_Exception
methodpublicpostDispatch() : void

postDispatch - auto render a view

Only autorenders if: - _noRender is false - action controller is present - request has not been re-dispatched (i.e., _forward() has not been called) - response is not a redirect
methodpublicrender(string $action = null, string $name = null, boolean $noController = null) : void

Render a view based on path specifications

Renders a view based on the view script path specifications.
Parameters
NameTypeDescription
$actionstring
$namestring
$noControllerboolean
methodpublicrenderBySpec(string $action = null, array $vars = array(), string $name = null) : void

Render a script based on specification variables

Pass an action, and one or more specification variables (view script suffix) to determine the view script path, and render that script.
Parameters
NameTypeDescription
$actionstring
$varsarray
$namestring
methodpublicrenderScript(string $script, string $name = null) : void

Render a view script (optionally to a named response segment)

Sets the noRender flag to true when called.
Parameters
NameTypeDescription
$scriptstring
$namestring
methodpublicsetInflector(\Zend_Filter_Inflector $inflector, boolean $reference = false) : \Zend_Controller_Action_Helper_ViewRenderer

Set inflector

Parameters
NameTypeDescription
$inflector\Zend_Filter_Inflector
$referenceboolean

Whether the moduleDir, target, and suffix should be set as references to ViewRenderer properties

Returns
TypeDescription
\Zend_Controller_Action_Helper_ViewRendererProvides a fluent interface
methodpublicsetNeverController(boolean $flag = true) : \Zend_Controller_Action_Helper_ViewRenderer

Set the neverController flag (i.e., whether or not to render into controller subdirectories)

Parameters
NameTypeDescription
$flagboolean
Returns
TypeDescription
\Zend_Controller_Action_Helper_ViewRendererProvides a fluent interface
methodpublicsetNeverRender(boolean $flag = true) : \Zend_Controller_Action_Helper_ViewRenderer

Set the neverRender flag (i.e., globally dis/enable autorendering)

Parameters
NameTypeDescription
$flagboolean
Returns
TypeDescription
\Zend_Controller_Action_Helper_ViewRendererProvides a fluent interface
methodpublicsetNoController(boolean $flag = true) : \Zend_Controller_Action_Helper_ViewRenderer

Set the noController flag (i.e., whether or not to render into controller subdirectories)

Parameters
NameTypeDescription
$flagboolean
Returns
TypeDescription
\Zend_Controller_Action_Helper_ViewRendererProvides a fluent interface
methodpublicsetNoRender(boolean $flag = true) : \Zend_Controller_Action_Helper_ViewRenderer

Set the noRender flag (i.e., whether or not to autorender)

Parameters
NameTypeDescription
$flagboolean
Returns
TypeDescription
\Zend_Controller_Action_Helper_ViewRendererProvides a fluent interface
methodpublicsetRender(string $action = null, string $name = null, boolean $noController = null) : \Zend_Controller_Action_Helper_ViewRenderer

Set options for rendering a view script

Parameters
NameTypeDescription
$actionstring

View script to render

$namestring

Response named segment to render to

$noControllerboolean

Whether or not to render within a subdirectory named after the controller

Returns
TypeDescription
\Zend_Controller_Action_Helper_ViewRendererProvides a fluent interface
methodpublicsetResponseSegment(string $name) : \Zend_Controller_Action_Helper_ViewRenderer

Set the response segment name

Parameters
NameTypeDescription
$namestring
Returns
TypeDescription
\Zend_Controller_Action_Helper_ViewRendererProvides a fluent interface
methodpublicsetScriptAction(string $name) : \Zend_Controller_Action_Helper_ViewRenderer

Set the view script to use

Parameters
NameTypeDescription
$namestring
Returns
TypeDescription
\Zend_Controller_Action_Helper_ViewRendererProvides a fluent interface
methodpublicsetView(\Zend_View_Interface $view) : \Zend_Controller_Action_Helper_ViewRenderer

Set the view object

Parameters
NameTypeDescription
$view\Zend_View_Interface
Returns
TypeDescription
\Zend_Controller_Action_Helper_ViewRendererProvides a fluent interface
methodpublicsetViewBasePathSpec(string $path) : \Zend_Controller_Action_Helper_ViewRenderer

Set view basePath specification

Specification can contain one or more of the following: - :moduleDir - current module directory - :controller - name of current controller in the request - :action - name of current action in the request - :module - name of current module in the request
Parameters
NameTypeDescription
$pathstring
Returns
TypeDescription
\Zend_Controller_Action_Helper_ViewRendererProvides a fluent interface
methodpublicsetViewScriptPathNoControllerSpec(string $path) : \Zend_Controller_Action_Helper_ViewRenderer

Set view script path specification (no controller variant)

Specification can contain one or more of the following: - :moduleDir - current module directory - :controller - name of current controller in the request - :action - name of current action in the request - :module - name of current module in the request :controller will likely be ignored in this variant.
Parameters
NameTypeDescription
$pathstring
Returns
TypeDescription
\Zend_Controller_Action_Helper_ViewRendererProvides a fluent interface
methodpublicsetViewScriptPathSpec(string $path) : \Zend_Controller_Action_Helper_ViewRenderer

Set view script path specification

Specification can contain one or more of the following: - :moduleDir - current module directory - :controller - name of current controller in the request - :action - name of current action in the request - :module - name of current module in the request
Parameters
NameTypeDescription
$pathstring
Returns
TypeDescription
\Zend_Controller_Action_Helper_ViewRendererProvides a fluent interface
methodpublicsetViewSuffix(string $suffix) : \Zend_Controller_Action_Helper_ViewRenderer

Set view script suffix

Parameters
NameTypeDescription
$suffixstring
Returns
TypeDescription
\Zend_Controller_Action_Helper_ViewRendererProvides a fluent interface
Documentation was generated by phpDocumentor 2.2.0 .