勉強したことのメモ

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

  関連記事

MySQLでランダムにデータを取得しつつページング機能も実装する方法
MySQLでランダムにデータを取得しつつページング機能も実装する方法

MySQLからデータを持ってくる際にランダムな表示を行ってほしいと言われた。ただ ...

PHPでファイルアップロード時にディレクトリトラバーサル攻撃の対策をする方法
PHPでファイルアップロード時にディレクトリトラバーサル攻撃の対策をする方法

あるシステムのセキュリティ対策としてディレクトリトラバーサル(Directory ...

PHPでCookie保存時にSameSite属性を設定する方法
PHPでCookie保存時にSameSite属性を設定する方法

あるシステムのセキュリティ対策としてCookie保存時にSameSite属性をS ...

PHPにてSession発行時に保存されるCookieに対してHttpOnly / Secure属性を設定する方法
PHPにてSession発行時に保存されるCookieに対してHttpOnly / Secure属性を設定する方法

先日PHPのsetcookie実行時にHttpOnly / Secure属性を設 ...

PHPでdatetime型のデータを年月日時分秒に分割する方法
PHPでdatetime型のデータを年月日時分秒に分割する方法

datetime型を年月日時分秒でそれぞれに分割させたい時に今まではいちいちex ...