cf-git / twig-once
Twig 模板标签 {% once [name] %}{% endonce %}
1.0.7
2023-12-16 12:39 UTC
Requires
- php: >7.2
- twig/twig: > 3.0
README
Twig 模板库的微扩展。在需要限制代码某些部分时可以使用。
需要 twig/twig
库.
如何使用。
1. 使用 composer 安装此扩展
composer require cf-git/twig-once
2. 在你的 PHP 项目中包含自动加载文件(如果尚未包含);
include_once('vendor/autoload.php');
3. 将令牌解析器添加到 Twig\Environment
$twig = new \Twig\Environment($loader, $config); $twig->addExtension(new \CFGit\TwigEngine\Extensions\Once\OnceExtension())
或者像这样
$twig = new \Twig\Environment($loader, $config); $twig->addTokenParser(new \CFGit\TwigEngine\Extensions\Once\OnceTokenParser());
4. 然后,使用 twig 文档!
然后使用它。
如果你做得正确。你会得到一些像这样。
{{-- Main content --}} {% for i in range(0, 5) %} <div>{{ i }}</div> {% once hello %} <script>console.log("[{{ i }}]Hello world!")</script> {% endonce %} {% endfor %}
输出
<div>0</div> <script>console.log("[0] Hello world!")</script> <div>1</div> <div>2</div> <div>3</div> <div>4</div> <div>5</div>
与包含的文件相同
{{-- Main content --}} {% for i in range(0,5) %} {% include "x.twig" with({(i): i}) %} {% endfor %}
{{-- x.twig content --}} <!-- {{ i }} --> {% once %} <!-- [{{ i }}] Hello world! --> {% endonce %}
输出
<!-- 0 --> <!-- [0] Hello world! --> <!-- 1 --> <!-- 2 --> <!-- 3 --> <!-- 4 --> <!-- 5 -->