Class ViewBuilder
Provides an API for iteratively building a view up.
Once you have configured the view and established all the context you can create a view instance with build().
- Cake\View\ViewBuilder implements JsonSerializable, Serializable
Properties summary
-
$_autoLayoutprotectedWhether or not autoLayout should be enabled.boolean -
$_classNameprotectedstringThe view class name to use. Can either use plugin notation, a short name or a fully namespaced classname.
-
$_helpersprotectedThe helpers to usearray -
$_layoutprotectedThe layout name to render.string -
$_layoutPathprotectedThe layout path to build the view with.string -
$_nameprotectedThe view variables to usestring -
$_optionsprotectedAdditional options used when constructing the view.array -
$_pluginprotectedThe plugin name to use.string -
$_templateprotectedThe template file to render.string -
$_templatePathprotectedThe subdirectory to the template.string -
$_themeprotectedThe theme name to use.string
Method Summary
- autoLayout() public
Turns on or off CakePHP's conventional mode of applying layout files. On by default. Setting to off means that layouts will not be automatically applied to rendered views.
- build() publicUsing the data in the builder, create a view instance.
- className() publicGet/set the view classname.
- createFromArray() publicConfigures a view builder instance from serialized config.
- enableAutoLayout() public
Turns on or off CakePHP's conventional mode of applying layout files. On by default. Setting to off means that layouts will not be automatically applied to rendered views.
- getClassName() publicGets the view classname.
- getHelpers() publicGets the helpers to use.
- getLayout() publicGets the name of the layout file to render the view inside of.
- getLayoutPath() publicGets path for layout files.
- getName() publicGets the view name.
- getOptions() publicGets additional options for the view.
- getPlugin() publicGets the plugin name to use.
- getTemplate() public
Gets the name of the view file to render. The name specified is the filename in /src/Template/
without the .ctp extension. - getTemplatePath() publicGets path for template files.
- getTheme() publicGets the view theme to use.
- helpers() publicThe helpers to use
- isAutoLayoutEnabled() public
Returns if CakePHP's conventional mode of applying layout files is enabled. Disabled means that layouts will not be automatically applied to rendered views.
- jsonSerialize() public
Serializes the view builder object to a value that can be natively serialized and re-used to clone this builder instance.
- layout() public
Get/set the name of the layout file to render the view inside of. The name specified is the filename of the layout in /src/Template/Layout without the .ctp extension.
- layoutPath() publicGet/set path for layout files.
- name() publicGet/set the view name
- options() publicSet additional options for the view.
- plugin() publicThe plugin name to use
- serialize() publicSerializes the view builder object.
- setClassName() publicSets the view classname.
- setHelpers() publicSets the helpers to use.
- setLayout() public
Sets the name of the layout file to render the view inside of. The name specified is the filename of the layout in /src/Template/Layout without the .ctp extension.
- setLayoutPath() publicSets path for layout files.
- setName() publicSets the view name.
- setOptions() publicSets additional options for the view.
- setPlugin() publicSets the plugin name to use.
- setTemplate() public
Sets the name of the view file to render. The name specified is the filename in /src/Template/
without the .ctp extension. - setTemplatePath() publicSets path for template files.
- setTheme() publicSets the view theme to use.
- template() public
Get/set the name of the view file to render. The name specified is the filename in /src/Template/
without the .ctp extension. - templatePath() publicGet/set path for template files.
- theme() publicThe view theme to use.
- unserialize() publicUnserializes the view builder object.
Method Detail
autoLayout()source public
autoLayout( boolean|null $enable null )
Turns on or off CakePHP's conventional mode of applying layout files. On by default. Setting to off means that layouts will not be automatically applied to rendered views.
Deprecated
3.4.0 Use enableAutoLayout()/isAutoLayoutEnabled() instead.Parameters
- boolean|null
$enableoptional null - Boolean to turn on/off. If null returns current value.
Returns
boolean|Cake\View\ViewBuilder$this
build()source public
build( array $vars [] , Cake\Http\ServerRequest $request null , Cake\Http\Response $response null , Cake\Event\EventManager $events null )
Using the data in the builder, create a view instance.
If className() is null, App\View\AppView will be used. If that class does not exist, then Cake\View\View will be used.
Parameters
- array
$varsoptional [] - The view variables/context to use.
-
Cake\Http\ServerRequest$requestoptional null - The request to use.
-
Cake\Http\Response$responseoptional null - The response to use.
-
Cake\Event\EventManager$eventsoptional null - The event manager to use.
Returns
Cake\View\ViewThrows
Cake\View\Exception\MissingViewExceptionclassName()source public
className( string|null $name null )
Get/set the view classname.
Accepts either a short name (Ajax) a plugin name (MyPlugin.Ajax) or a fully namespaced name (App\View\AppView).
Deprecated
3.4.0 Use setClassName()/getClassName() instead.Parameters
- string|null
$nameoptional null The class name for the view. Can be a plugin.class name reference, a short alias, or a fully namespaced name.
Returns
string|Cake\View\ViewBuilder$this
createFromArray()source public
createFromArray( array $config )
Configures a view builder instance from serialized config.
Parameters
- array
$config - View builder configuration array.
Returns
$this Configured view builder instance.
enableAutoLayout()source public
enableAutoLayout( boolean $enable true )
Turns on or off CakePHP's conventional mode of applying layout files. On by default. Setting to off means that layouts will not be automatically applied to rendered views.
Parameters
- boolean
$enableoptional true - Boolean to turn on/off.
Returns
$this
getLayout()source public
getLayout( )
Gets the name of the layout file to render the view inside of.
Returns
stringgetTemplate()source public
getTemplate( )
Gets the name of the view file to render. The name specified is the filename in /src/Template/
Returns
stringhelpers()source public
helpers( array $helpers null , boolean $merge true )
The helpers to use
Deprecated
3.4.0 Use setHelpers()/getHelpers() instead.Parameters
- array
$helpersoptional null - Helpers to use.
- boolean
$mergeoptional true - Whether or not to merge existing data with the new data.
Returns
array|Cake\View\ViewBuilder$this
isAutoLayoutEnabled()source public
isAutoLayoutEnabled( )
Returns if CakePHP's conventional mode of applying layout files is enabled. Disabled means that layouts will not be automatically applied to rendered views.
Returns
booleanjsonSerialize()source public
jsonSerialize( )
Serializes the view builder object to a value that can be natively serialized and re-used to clone this builder instance.
Returns
arraySerializable array of configuration properties.
Implementation of
JsonSerializable::jsonSerialize() layout()source public
layout( string|null $name null )
Get/set the name of the layout file to render the view inside of. The name specified is the filename of the layout in /src/Template/Layout without the .ctp extension.
Deprecated
3.4.0 Use setLayout()/getLayout() instead.Parameters
- string|null
$nameoptional null - Layout file name to set. If null returns current name.
Returns
string|Cake\View\ViewBuilder$this
layoutPath()source public
layoutPath( string|null $path null )
Get/set path for layout files.
Deprecated
3.4.0 Use setLayoutPath()/getLayoutPath() instead.Parameters
- string|null
$pathoptional null - Path for layout files. If null returns current path.
Returns
string|Cake\View\ViewBuilder$this
name()source public
name( string|null $name null )
Get/set the view name
Deprecated
3.4.0 Use setName()/getName() instead.Parameters
- string|null
$nameoptional null - The name of the view
Returns
string|Cake\View\ViewBuilder$this
options()source public
options( array $options null , boolean $merge true )
Set additional options for the view.
This lets you provide custom constructor arguments to application/plugin view classes.
Deprecated
3.4.0 Use setOptions()/getOptions() instead.Parameters
- array
$optionsoptional null - Either an array of options or null to get current options.
- boolean
$mergeoptional true - Whether or not to merge existing data with the new data.
Returns
array|Cake\View\ViewBuilder$this
plugin()source public
plugin( string|null|false $name null )
The plugin name to use
Deprecated
3.4.0 Use setPlugin()/getPlugin() instead.Parameters
- string|null|false
$nameoptional null Plugin name. If null returns current plugin. Use false to remove the current plugin name.
Returns
string|Cake\View\ViewBuilder$this
serialize()source public
serialize( )
Serializes the view builder object.
Returns
stringImplementation of
Serializable::serialize() setClassName()source public
setClassName( string $name )
Sets the view classname.
Accepts either a short name (Ajax) a plugin name (MyPlugin.Ajax) or a fully namespaced name (App\View\AppView).
Parameters
- string
$name - The class name for the view.
Returns
$this
setHelpers()source public
setHelpers( array $helpers , boolean $merge true )
Sets the helpers to use.
Parameters
- array
$helpers - Helpers to use.
- boolean
$mergeoptional true - Whether or not to merge existing data with the new data.
Returns
$this
setLayout()source public
setLayout( string $name )
Sets the name of the layout file to render the view inside of. The name specified is the filename of the layout in /src/Template/Layout without the .ctp extension.
Parameters
- string
$name - Layout file name to set.
Returns
$this
setLayoutPath()source public
setLayoutPath( string $path )
Sets path for layout files.
Parameters
- string
$path - Path for layout files.
Returns
$this
setName()source public
setName( string $name )
Sets the view name.
Parameters
- string
$name - The name of the view.
Returns
$this
setOptions()source public
setOptions( array $options , boolean $merge true )
Sets additional options for the view.
This lets you provide custom constructor arguments to application/plugin view classes.
Parameters
- array
$options - An array of options.
- boolean
$mergeoptional true - Whether or not to merge existing data with the new data.
Returns
$this
setPlugin()source public
setPlugin( string|null|false $name )
Sets the plugin name to use.
False to remove current plugin name is deprecated as of 3.4.0. Use directly null instead.
Parameters
- string|null|false
$name Plugin name. Use null or false to remove the current plugin name.
Returns
$this
setTemplate()source public
setTemplate( string $name )
Sets the name of the view file to render. The name specified is the filename in /src/Template/
Parameters
- string
$name - View file name to set.
Returns
$this
setTemplatePath()source public
setTemplatePath( string $path )
Sets path for template files.
Parameters
- string
$path - Path for view files.
Returns
$this
setTheme()source public
setTheme( string|null|false $theme )
Sets the view theme to use.
False to remove current theme is deprecated as of 3.4.0. Use directly null instead.
Parameters
- string|null|false
$theme Theme name. Use null or false to remove the current theme.
Returns
$this
template()source public
template( string|null $name null )
Get/set the name of the view file to render. The name specified is the filename in /src/Template/
Deprecated
3.4.0 Use setTemplate()/getTemplate()Parameters
- string|null
$nameoptional null - View file name to set. If null returns current name.
Returns
string|Cake\View\ViewBuilder$this
templatePath()source public
templatePath( string|null $path null )
Get/set path for template files.
Deprecated
3.4.0 Use setTemplatePath()/getTemplatePath() instead.Parameters
- string|null
$pathoptional null - Path for view files. If null returns current path.
Returns
string|Cake\View\ViewBuilder$this
theme()source public
theme( string|null|false $theme null )
The view theme to use.
Deprecated
3.4.0 Use setTheme()/getTheme() instead.Parameters
- string|null|false
$themeoptional null Theme name. If null returns current theme. Use false to remove the current theme.
Returns
string|Cake\View\ViewBuilder$this
unserialize()source public
unserialize( string $data )
Unserializes the view builder object.
Parameters
- string
$data - Serialized string.
Returns
$this Configured view builder instance.
Implementation of
Serializable::unserialize() Properties detail
$_classNamesource
protected string
The view class name to use. Can either use plugin notation, a short name or a fully namespaced classname.
$_optionssource
protected array
Additional options used when constructing the view.
This options array lets you provide custom constructor arguments to application/plugin view classes.
[]
© 2005–2017 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/3.4/class-Cake.View.ViewBuilder.html