私は Symfony の初心者です。小枝テンプレートでネイティブphp関数を使用するにはどうすればよいですか?
たとえば、次chr
のようなループで関数を使用したい:
{% for directory in directories %}
chr(loop.index)
{% endfor %}
Twig allows you to add functions and filters. There're multiple examples on the documentation.
For example,
いいえ、Twig で PHP を直接使用することはできません。
いくつかのオプションがあります:
twig の代わりに PHP をテンプレート エンジンとして設定できます。これは、テンプレート内で PHP を使用し、すべてのネイティブ PHP 関数を使用できることを意味します。その方法については、このドキュメントの記事を参照してください。
独自の Twig 拡張機能を簡単に作成できます。ベスト プラクティスは、AcmeTwigBundle
一般的な Twig 拡張機能をすべて配置する場所を作成することです。Symfony でこれを行う方法については、このドキュメントの記事を参照してください。
Twig 1.12 (Symfony2.2 には付属しています) の時点で、PHP 関数を twig 関数に簡単にマップできる非常に優れたクラスがあります。
new Twig_SimpleFilter('rot13', 'str_rot13');
これにより、 PHP 関数rot13
にマップされる Twig 関数が作成されます。str_rot13