勉強したことのメモ

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

  関連記事

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

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

PHPで複数の変数に同じ値を代入する方法(多重代入 / 一括代入 / 同時代入)
PHPで複数の変数に同じ値を代入する方法(多重代入 / 一括代入 / 同時代入)

PHPのソースコード上に「$a = $b = $c = 12;」みたいな見たこと ...

CodeIgniter4 & reCAPTCHA でお問い合わせフォームを作成する方法
CodeIgniter4 & reCAPTCHA でお問い合わせフォームを作成する方法

以前CodeIgniter4.4.4で簡易的なお問い合わせページを作成したが、今 ...

他所のサーバからWordPressの記事情報をpostIDを指定して取得する方法
他所のサーバからWordPressの記事情報をpostIDを指定して取得する方法

他所のサーバからWPの記事IDを指定した上で、当該IDのタイトル・アイキャッチ画 ...

GoogleスプレッドシートとPHPを連携させデータを取得・追記する方法
GoogleスプレッドシートとPHPを連携させデータを取得・追記する方法

GoogleスプレッドシートとPHPプログラムを連携させたいという案件をたまに見 ...