# Class yii\twig\ViewRenderer

Inheritance | yii\twig\ViewRenderer » yii\base\ViewRenderer » yii\base\Component » yii\base\BaseObject
Implements | yii\base\Configurable
Available since version | 2.0
Source Code | https://github.com/yiisoft/yii2-twig/blob/master/ViewRenderer.php

TwigViewRenderer allows you to use Twig templates in views.

## Public Properties

Hide inherited properties

Property | Type | Description | Defined By
--- | --- | --- | ---
$behaviors | yii\base\Behavior[] | List of behaviors attached to this component. This property is read-only. | yii\base\Component
$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 | Global variables. | 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

Method | Description | Defined By
--- | --- | ---
__call() | Calls the named method which is not a class method. | yii\base\Component
__clone() | This method is called after the object is created by cloning an existing one. | yii\base\Component
__construct() | Constructor. | yii\base\BaseObject
__get() | Returns the value of a component property. | yii\base\Component
__isset() | Checks if a property is set, i.e. defined and not null. | yii\base\Component
__set() | Sets the value of a component property. | yii\base\Component
__unset() | Sets a component property to be null. | yii\base\Component
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
attachBehavior() | Attaches a behavior to this component. | yii\base\Component
attachBehaviors() | Attaches a list of behaviors to the component. | yii\base\Component
behaviors() | Returns a list of behaviors that this component should behave as. | yii\base\Component
canGetProperty() | Returns a value indicating whether a property can be read. | yii\base\Component
canSetProperty() | Returns a value indicating whether a property can be set. | yii\base\Component
className() | Returns the fully qualified name of this class. | yii\base\BaseObject
detachBehavior() | Detaches a behavior from the component. | yii\base\Component
detachBehaviors() | Detaches all behaviors from the component. | yii\base\Component
ensureBehaviors() | Makes sure that the behaviors declared in behaviors() are attached to this component. | yii\base\Component
getBehavior() | Returns the named behavior object. | yii\base\Component
getBehaviors() | Returns all behaviors attached to this component. | yii\base\Component
hasEventHandlers() | Returns a value indicating whether there is any handler attached to the named event. | yii\base\Component
hasMethod() | Returns a value indicating whether a method is defined. | yii\base\Component
hasProperty() | Returns a value indicating whether a property is defined for this component. | yii\base\Component
init() |  | yii\twig\ViewRenderer
off() | Detaches an existing event handler from this component. | yii\base\Component
on() | Attaches an event handler to an event. | yii\base\Component
render() | Renders a view file. | yii\twig\ViewRenderer
setLexerOptions() | Sets Twig lexer options to change templates syntax | yii\twig\ViewRenderer
trigger() | Triggers an event. | yii\base\Component

## Protected Methods

Hide inherited methods

Method | Description | Defined 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

Global variables. Keys of the array are names to call in template, values are scalar or objects or names of static classes. Example: `['html' => ['class' => '\yii\helpers\Html'], 'debug' => YII_DEBUG]`. 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

Twig options.

See also http://twig.sensiolabs.org/doc/api.html#environment-options.

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

public array $twigFallbackPaths = []
$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\FilesystemLoader::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::class,
    ]

public array $uses = []

## Method Details

addAliases() protected method

Adds aliases

protected void addAliases ( $loader, $aliases )
$loader | \Twig\Loader\FilesystemLoader |
$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\FilesystemLoader |
$theme | \yii\twig\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