博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

yii2 使用twig 模板引擎

Posted on 2016-06-27 19:09  红与黑hyh  阅读(2371)  评论(0编辑  收藏  举报

yii2 默认使用PHP 和html 混合的方式来写视图层,但我个人还是喜欢纯模板语言的方式。而且已经非常习惯使用twig的语法,最近想使用yii2进行开发,所以还是选择使用twig视图引擎。

    github 已经有人提供了这样的vendor ,可以直接comoser 配置一下进行使用。

composer.json 文件 require 添加 "yiisoft/yii2-twig": "*" 然后 composer update

   前往common/config 下 main.php 加上配置

[    'components' =>
      [        'view' => [           
                       'class' => 'yii\web\View',           
                          'renderers' => [               
                           'tpl' => [                   
                            'class' => 'yii\smarty\ViewRenderer',                   
                             //'cachePath' => '@runtime/Smarty/cache',              
                               ],               
                            'twig' => [                   
                             'class' => 'yii\twig\ViewRenderer',                
                             'cachePath' => '@runtime/Twig/cache',                 
                               // Array of twig options:                   
                                'options' => [                        
                                    'auto_reload' => true,                   
                                     ],                   
                             'globals' => ['html' => '\yii\helpers\Html'],          
                              'uses' => ['yii\bootstrap'],               
                        ],               
                                // ...         
                 ],      
              ],   
       ],]

    其中tpl 的配置是smarty 引擎。如果不使用smarty 可以不配置。接下来就可以去控制器下使用了。

return $this->render('test.twig', ['test' => 'hello,yii']);

   github地址:https://github.com/yiisoft/yii2/blob/master/docs/guide/tutorial-template-engines.md