勉強したことのメモ

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

  関連記事

PHPでJSONデータを見やすく整形した上で表示させる方法
PHPでJSONデータを見やすく整形した上で表示させる方法

PHPで何らかのデータをjson_encodeでJSONに変換し、そのままech ...

JavaScript / PHPにて「lz-string」を用いてデータの圧縮・展開する方法
JavaScript / PHPにて「lz-string」を用いてデータの圧縮・展開する方法

文字数が多いGETパラメータを送信したいというケースがあった。また、送信側はJa ...

PHPMailerでメールを送信する際にTLS / SSL暗号化させる方法
PHPMailerでメールを送信する際にTLS / SSL暗号化させる方法

PHPMailerでメールを送信したところGmailで確認すると赤い鍵のようなア ...

Stripe Checkoutにてクレジットカード決済の際に3Dセキュア対応にする方法
Stripe Checkoutにてクレジットカード決済の際に3Dセキュア対応にする方法

先日Stripe Checkoutを用いたクレジットカード決済機能についてメモし ...

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

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