Twig

Twig
作者 Armin Ronacher[1]
Fabien Potencier
開発元 Twig Team
初版 2009年10月12日 (2009-10-12)
最新版
v3.20.0 / 2025年2月13日 (2025-02-13)[2]
リポジトリ
プログラミング
言語
PHP
対応OS クロスプラットフォーム
サポート状況 Active
種別 テンプレートエンジン
ライセンス BSDライセンス
公式サイト twig.sensiolabs.org

Twigは、PHPで実装されたオープンソースのテンプレートエンジンである。ライセンスはBSDライセンスである。Jinjaや、Djangoテンプレート言語に近い構文を持つ[3]。Symfonyフレームワークではデフォルトのテンプレートエンジンとして利用されている[4]。

例

以下はTwigの基本的な機能の使用例である。

{% extends "base.html" %}
{% block navigation %}
    <ul id="navigation">
    {% for item in navigation %}
        <li>
            <a href="{{ item.href }}">
                {% if item.level == 2 %}&nbsp;&nbsp;{% endif %}
                {{ item.caption|upper }}
            </a>
        </li>
    {% endfor %}
    </ul>
{% endblock navigation %}
  • {%...%} if文、forループ文などのステートメント。
  • {{...}} 変数、配列、オブジェクトのプロパティ、オブジェクトのgetterメソッドなどを出力表示する。
  • {#...#} コメント文

特徴

  • 複雑な制御フロー
  • 自動的なHTMLエスケープ
  • テンプレートの継承
  • フィルター
  • i18n対応(gettext)
  • マクロ
  • 完全拡張可能[3][5]

脚注

  1. ↑ The original repository “mitsuhiko/twig: a template engine for the chyrp blog engine.”. GitHub. 2025年2月7日閲覧。
  2. ↑ “Release v3.20.0 · twigphp/Twig”. GitHub. 2025年3月2日閲覧。
  3. 1 2 Twig documentation for template designers
  4. ↑ “Creating and Using Templates (Symfony Docs)”. Symfony SAS. 2025年2月7日閲覧。
  5. ↑ Extending Twig

関連項目

外部リンク