パーサパッケージ
パーサパッケージは、コアのビュークラスを拡張し、任意のテンプレートパーサを使用可能にします。
はじめに
パーサパッケージは View の作りかたをまったく変更することなく、あなたが PHP の代替にしたい と思うどんなテンプレートパーサでも使えるようにします。 パッケージには Mustache, Markdown, Twig そして Smarty のようなパーサのドライバーがいくつも付属しています。
どのパーサを使用するかは、ビューファイルのファイル拡張子で選択します。 標準のビューの拡張子は .php で、PHP を使用してテンプレートをパースします。.php 拡張子が省略されることもあります。 それ以外のパーサは独自の拡張子を持ちます。例えば、foo.mustache は Mustache ドライバを使用し、foo.tpl は Dwoo ドライバを使用します (拡張子は config で変更できます)。
インストール
パーサパッケージは Fuel のダウンロードに含まれています。これを使用するには 、まず config に下記を 追加して利用可能にしなければなりません。
'always_load' => array(
'packages' => array(
'parser',
),
),
While many drivers are included, most of the libraries are not. Only Mustache and Markdown are included in the vendor directory of the package and work out of the box.
Mustache, Twig, MtHaml and Smarty should be installed via Composer. Simply add the libraries to your project's composer.json then run "php composer.phar install":
{
"require": {
"mustache/mustache" : "*",
"smarty/smarty" : "*",
"twig/twig" : "*",
"mthaml/mthaml": "*"
}
}
設定
パーサは config/parser.php ファイルで設定できます。以下のキーを使用します。
パラメータ | 型 | デフォルト | 説明 |
---|---|---|---|
extensions | array | (拡張子、パースするビュークラス、の配列) | 有効な拡張子と対応するビュードライバを定義します。 |
ランタイム設定
全てのドライバは、現在のパーサオブジェクトにアクセスする parser() メソッドを有します。 これは必須条件(requiremen)ではなく規約(convention)ですので、サードパーティ製ドライバによって 異なることがあります。
// 特定の Smarty テンプレートのキャッシュをクリアする。
$view = View::forge('example.smarty');
$view->parser()->clearCache('example.smarty');
// 静的な使い方の例
View_Smarty::parser()->clearCache('example.smarty');