Class yii\twig\ViewRenderer

Inheritanceyii\twig\ViewRenderer » yii\base\ViewRenderer
Available since version2.0

TwigViewRenderer allows you to use Twig templates in views.

Public Properties

Hide inherited properties

PropertyTypeDescriptionDefined By
$cachePath string The directory or path alias pointing to where Twig cache will be stored. yii\twig\ViewRenderer
$extensions array Custom extensions. yii\twig\ViewRenderer
$filters array Custom filters. yii\twig\ViewRenderer
$functions array Custom functions. yii\twig\ViewRenderer
$globals array Objects or static classes. yii\twig\ViewRenderer
$lexerOptions array Twig lexer options. yii\twig\ViewRenderer
$options array Twig options. yii\twig\ViewRenderer
$twig \Twig_Environment Twig environment object that renders twig templates yii\twig\ViewRenderer
$twigFallbackPaths array Twig fallback paths yii\twig\ViewRenderer
$twigModulesNamespace string Twig namespace to use in modules templates yii\twig\ViewRenderer
$twigViewsNamespace string Twig namespace to use in templates yii\twig\ViewRenderer
$twigWidgetsNamespace string Twig namespace to use in widgets templates yii\twig\ViewRenderer
$uses array Namespaces and classes to import. yii\twig\ViewRenderer

Public Methods

Hide inherited methods

MethodDescriptionDefined By
addExtensions() Adds custom extensions yii\twig\ViewRenderer
addFilters() Adds custom filters yii\twig\ViewRenderer
addFunctions() Adds custom functions yii\twig\ViewRenderer
addGlobals() Adds global objects or static classes yii\twig\ViewRenderer
init() yii\twig\ViewRenderer
render() Renders a view file. yii\twig\ViewRenderer
setLexerOptions() Sets Twig lexer options to change templates syntax yii\twig\ViewRenderer

Protected Methods

Hide inherited methods

MethodDescriptionDefined By
addAliases() Adds aliases yii\twig\ViewRenderer
addFallbackPaths() Adds fallback paths to twig loader yii\twig\ViewRenderer

Property Details

$cachePath public property

The directory or path alias pointing to where Twig cache will be stored. Set to false to disable templates cache.

public string $cachePath '@runtime/Twig/cache'
$extensions public property

Custom extensions. Example: ['Twig_Extension_Sandbox', new \Twig_Extension_Text()]

public array $extensions = []
$filters public property

Custom filters. Keys of the array are names to call in template, values are names of functions or static methods of some class. Example: ['rot13' => 'str_rot13', 'jsonEncode' => '\yii\helpers\Json::encode']. In the template you can use it like this: {{ 'test'|rot13 }} or {{ model|jsonEncode }}.

public array $filters = []
$functions public property

Custom functions. Keys of the array are names to call in template, values are names of functions or static methods of some class. Example: ['rot13' => 'str_rot13', 'a' => '\yii\helpers\Html::a']. In the template you can use it like this: {{ rot13('test') }} or {{ a('Login', 'site/login') | raw }}.

public array $functions = []
$globals public property

Objects or static classes. Keys of the array are names to call in template, values are objects or names of static classes. Example: ['html' => '\yii\helpers\Html']. In the template you can use it like this: {{ html.a('Login', 'site/login') | raw }}.

public array $globals = []
$lexerOptions public property

Twig lexer options.

Example: Smarty-like syntax: `php [

'tag_comment'  => ['{*', '*}'],
'tag_block'    => ['{', '}'],
'tag_variable' => ['{$', '}']

] `

See also http://twig.sensiolabs.org/doc/recipes.html#customizing-the-syntax.

public array $lexerOptions = []
$options public property
public array $options = []
$twig public property

Twig environment object that renders twig templates

public \Twig_Environment $twig null
$twigFallbackPaths public property (available since version 2.0.5)

Twig fallback paths

$twigModulesNamespace public property (available since version 2.0.5)

Twig namespace to use in modules templates

public string $twigModulesNamespace 'modules'
$twigViewsNamespace public property (available since version 2.0.5)

Twig namespace to use in templates

public string $twigViewsNamespace = \Twig_Loader_Filesystem::MAIN_NAMESPACE
$twigWidgetsNamespace public property (available since version 2.0.5)

Twig namespace to use in widgets templates

public string $twigWidgetsNamespace 'widgets'
$uses public property

Namespaces and classes to import.

Example:

[
    'yii\bootstrap',
    'app\assets',
    \yii\bootstrap\NavBar::className(),
]
public array $uses = []

Method Details

addAliases() protected method

Adds aliases

protected void addAliases ( $loader, $aliases )
$loader \Twig_Loader_Filesystem
$aliases array
addExtensions() public method

Adds custom extensions

public void addExtensions ( $extensions )
$extensions array

@see self::$extensions

addFallbackPaths() protected method (available since version 2.0.5)

Adds fallback paths to twig loader

protected void addFallbackPaths ( $loader, $theme )
$loader \Twig_Loader_Filesystem
$theme \yii\base\Theme|null
addFilters() public method

Adds custom filters

public void addFilters ( $filters )
$filters array

@see self::$filters

addFunctions() public method

Adds custom functions

public void addFunctions ( $functions )
$functions array

@see self::$functions

addGlobals() public method

Adds global objects or static classes

public void addGlobals ( $globals )
$globals array

@see self::$globals

init() public method

public void init ( )
render() public method

Renders a view file.

This method is invoked by \yii\base\View whenever it tries to render a view. Child classes must implement this method to render the given view file.

public string render ( $view, $file, $params )
$view \yii\base\View

The view object used for rendering the file.

$file string

The view file.

$params array

The parameters to be passed to the view file.

return string

The rendering result

setLexerOptions() public method

Sets Twig lexer options to change templates syntax

public void setLexerOptions ( $options )
$options array

@see self::$lexerOptions