Twig

灵活、快速且安全的
PHP 模板引擎

a Symfony Product
文档 Functions template_from_string
您正在阅读 Twig 3.x 的文档。切换到 Twig 1.x, 2.x 的文档。

问题与反馈

许可

Twig 文档 基于新的 BSD 许可 授权。

template_from_string

template_from_string 函数从字符串加载模板

1
2
{{ include(template_from_string("Hello {{ name }}")) }}
{{ include(template_from_string(page.template)) }}

为了方便调试,您还可以为模板指定一个名称,该名称将成为任何相关错误消息的一部分

1
{{ include(template_from_string(page.template, "template for page " ~ page.name)) }}

注意

template_from_string 函数默认情况下不可用。

在 Symfony 项目中,您需要在您的 services.yaml 文件中加载它

1
2
services:
    Twig\Extension\StringLoaderExtension:

services.php 文件

1
$services->set(\Twig\Extension\StringLoaderExtension::class);

否则,在 Twig 环境中显式添加扩展

1
2
3
4
use Twig\Extension\StringLoaderExtension;

$twig = new \Twig\Environment(...);
$twig->addExtension(new StringLoaderExtension());

注意

即使您可能总是将 template_from_string 函数与 include 函数一起使用,您也可以将其与任何将模板作为参数的标签或函数一起使用(例如 embedextends 标签)。

参数

  • template:模板
  • name:模板的名称