改进模板引擎

This commit is contained in:
thinkphp
2018-04-19 17:05:13 +08:00
parent 64e7a27f74
commit 9918d4c02a
2 changed files with 13 additions and 1 deletions

View File

@@ -44,7 +44,15 @@ class File
{
if (!empty($vars) && is_array($vars)) {
// 模板阵列变量分解成为独立变量
extract($vars, EXTR_OVERWRITE);
if (isset($vars['cacheFile'])) {
$_think_cacheFile = $cacheFile;
$cacheFile = $vars['cacheFile'];
unset($vars['cacheFile'], $vars['_think_cacheFile']);
extract($vars, EXTR_OVERWRITE);
include $_think_cacheFile;
return;
}
extract($vars);
}
//载入模版缓存文件
include $cacheFile;

View File

@@ -74,6 +74,8 @@ class Php
App::$debug && Log::record('[ VIEW ] ' . $template . ' [ ' . var_export(array_keys($data), true) . ' ]', 'info');
if (isset($data['template'])) {
$__template__ = $template;
$template = $data['template'];
unset($data['template'], $data['__template__']);
extract($data, EXTR_OVERWRITE);
include $__template__;
} else {
@@ -93,6 +95,8 @@ class Php
{
if (isset($data['content'])) {
$__content__ = $content;
$content = $data['content'];
unset($data['content'], $data['__content__']);
extract($data, EXTR_OVERWRITE);
eval('?>' . $__content__);
} else {