Smarty输出空白页
已解决:模板文件中的错误
我的Smarty设置如下:
require_once 'smarty/Smarty.class.php';
$smarty = new Smarty();
$smarty->compile_dir = $compile_dir;
$smarty->template_dir = $tpl_dir;
这就是我现在需要的全部……我为另一个站点设置了与此完全相同的Smarty,并且它在同一服务器上运行良好。
var_dump($smarty)
输出其所有公共变量,$smarty->template_exists("index.tpl")
返回1
,这都表明Smarty设置正确且工作正常,但$smarty->display("index.tpl")
和$output = $smarty->fetch("index.tpl"); echo $output;
都输出空白页。而且index.tpl文件肯定包含HTML.
我是不是忘了什么步骤?
编辑:
添加
ini_set('display_errors', true);
error_reporting(E_ALL + E_NOTICE);
还为Smarty创建了配置目录。
并尝试$output = $smarty->fetch("index.tpl"); var_dump($output)
。
仍然是空白页。
如果我在$smarty->display("index.tpl")
之前echo "foo";
,它会输出该行,但如果我在它之后做,它不会输出它。
解决方案
我在模板文件中有额外的{foo.bar}
(没有$
)变量,这些变量应该在稍后的代码中实现,假设Smarty只是用空格替换这些变量,我认为不会是那些变量导致了问题,但删除它们后,它运行得很好。
相关文章