Create new Twig.class.php in Thinkphp/Library/Think/Template/Driver/
<?php
namespace Think\Template\Driver;
class Twig {
/**
* 渲染模板輸出
* @access public
* @param string $templateFile 模板文件名
* @param array $var 模板變量
* @return void
*/
public function fetch($templateFile,$var)
{
$loader = new \Twig_Loader_Filesystem(THEME_PATH);
$twig = new \Twig_Environment($loader, [
'cache' => CACHE_PATH,
'auto_reload' => true,
'debug' => true,// 開啓debug
]);
$twig->addExtension(new \Twig_Extension_Debug());// 開啓debug
$twig->addFunction(new \Twig_SimpleFunction('session', 'session'));// 映射系統函數session
$twig->addFunction(new \Twig_SimpleFunction('I', 'I'));// 映射系統函數I
$templateFile = substr($templateFile,strlen(THEME_PATH));
echo $twig->render($templateFile, $var);
}
}
Change config
<?php
// set TMPL_TEMPLATE_SUFFI is optional, you can just use .html, but in PHPStorm .twig files get Highlight display
// set in config.php
return [
'TMPL_ENGINE_TYPE' => 'Twig',
'TMPL_TEMPLATE_SUFFIX' => '.twig',
];
or
// set before call ($this->display()) on the fly
C('TMPL_ENGINE_TYPE', 'Twig');
C('TMPL_TEMPLATE_SUFFIX', '.twig');