使えるシステムから使いたいシステムへ、有限会社アテージ

以前紹介したこちらのmustacheのphp実装ではsmartyやtwigで使えるパイプ記法のフィルターが使えます。今回はこのパイプ記法について紹介します。

※mustacheには本来ない機能ですので、テンプレートを他の言語でも使いたいという場合には注意が必要です。

実例

例えば、フィルターを使ってゼロパッディングとゼロサプレスを行うには以下のようにします。テンプレートに{{%FILTERS}}pragmaを入れることでフィルタ記法を解釈するようになります。

php

mustache template

注意!

mustache準拠のlambdaを使えば同じことができるように思えますが、lambdaでは変数の展開が行われる前に関数に”{{変数}}”が文字列として渡ってしまうためエラーや想定外の結果となることがあります。いつ展開が行われるか、注意が必要です。

php

mustache template

展開結果