勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

PHPのテンプレートエンジン「Twig」の使い方について簡易メモ

   2024/02/20  PHP

開発中の案件でテンプレートエンジンのTwigを利用する機会があった。使ってみた感じview(HTML部分)とプログラム部分が切り分けられているだけっぽい。プログラム部分は素のPHPでいいが、view側も多少は関数等入れられるのでよく使うものをメモ。

 

公式ページ

https://twig.symfony.com/doc/2.x/

ページ下の方にリファレンスがある。

 

よく使うもの

#変数の定義
{% set hoge = 'hogehoge' %}

#変数の出力
{{ hoge }}

#エスケープせずに出力(htmlタグ入りの場合等)
{{ hoge_html|raw }}

if文(||はor, &&はandに変更する)
{% if msg == 'success' %}
    true処理
{% elseif msg == 'error' %}
    false処理
{% endif %}

#foreach的なもの(連想配列のループ取り出し)
{% for key, val in array_list  %}
    {{ attribute( item_array, 'array_key' ) }}
{% endfor %}

#PHPのnumber_format的なもの
{{ 10000 | number_format(1, '.', ',') }}

 - PHP

  関連記事

JavaScriptの「pako」ライブラリでGzip圧縮したデータをPHPで展開する方法
JavaScriptの「pako」ライブラリでGzip圧縮したデータをPHPで展開する方法

先日、JavaScriptの「pako」ライブラリで文字列やオブジェクト(連想配 ...

PHPで指定時間内に指定回数以上のアクセスがあった場合に429エラーを表示させる方法
PHPで指定時間内に指定回数以上のアクセスがあった場合に429エラーを表示させる方法

ログインフォームやお問い合わせページに対して短期間に多数のアクセスがあり、それを ...

htmlspecialcharsを通してMySQLに格納したものを元に戻して出力
htmlspecialcharsを通してMySQLに格納したものを元に戻して出力

MySQLにHTMLタグを入れたくない場合にhtmlspecialcharsを使 ...

CodeIgniter4で簡易版ログインシステムの実装方法(管理画面向け)
CodeIgniter4で簡易版ログインシステムの実装方法(管理画面向け)

CodeIgniter4で管理画面向けの簡易版ログインシステムを作成したい。通常 ...

DTIのVPSにCodeigniter3を導入する方法
DTIのVPSにCodeigniter3を導入する方法

DTIのVPSにPHPフレームワークのCodeigniter3系をインストールし ...