我必须用Twig_Loader_String呈现一个模板,我需要扩展一个模板,如下所示:
$body='{% extends "/views/path/to/my/template" %}
{% block body %} Hello {% endblock %}';在PHP方面,我写道:
$loader = new Twig_Loader_String();
$twig = new Twig_Environment($loader);
$twig->render($body,array());我不明白为什么呈现后的结果是:
/views/path/to/my/template发布于 2014-09-07 15:33:15
您只有一个字符串加载程序,这个字符串就是您的实际模板。您正在扩展它,并覆盖身体块--但是它没有身体块。
发布于 2017-02-27 11:55:22
使用以下代码展开@Maerlyn的答案:
$loaders = [
new Twig_Loader_Filesystem('path/to/twig/views'),
new Twig_Loader_String()
];
$loader = new Twig_Loader_Chain($loaders);
$twig = new Twig_Environment($loader);https://stackoverflow.com/questions/25710475
复制相似问题