パーサパッケージ
パーサパッケージは、コアのビュークラスを拡張し、任意のテンプレートパーサを使用可能にします。
導入
パーサパッケージは、ビューの扱い方を変更しませんが、 PHP の代わりに任意のテンプレートパーサを使用可能にします。パッケージには、Mustache, Markdown, Twig そして Smarty 等のパーサの ドライバが同梱されています。
どのパーサを使用するかは、ビューファイルのファイル拡張子で選択します。 標準のビューの拡張子は .php で、PHP を使用してテンプレートをパースします。.php 拡張子が省略されることもあります。 それ以外のパーサは独自の拡張子を持ちます。例えば、foo.mustache は Mustache ドライバを使用し、foo.tpl は Dwoo ドライバを使用します(拡張子は config で変更できます)。
インストール
パーサパッケージは、Fuel ダウンロードに含まれています。使用するには、config に下記を追加して有効にしてください。
'packages' => array(
'parser',
),
多くのドライバが同梱されていますが、ライブラリは同梱されていない場合がほとんどです。Mustache と Markdown のみ、 package の vendor ディレクトリに同梱されており、すぐに使用可能です。他のパーサは、 それぞれのウェブサイトからダウンロードする必要があります。config を変更しないで動作させるには、 ライブラリを app/vendor/{Lib_name} に配置してください。 Lib_name の先頭は大文字にしてください。
設定
パーサは config/parser.php ファイルで設定できます。以下のキーを使用します。
パラメータ | 型 | 規定値 | 説明 |
---|---|---|---|
extensions | array | (拡張子、パースするビュークラス、の配列) | 有効な拡張子と対応するビュードライバを定義します。 |
ランタイム設定
全てのドライバは、現在のパーサオブジェクトにアクセスする parser() メソッドを有します。 これは必須条件(requiremen)ではなく規約(convention)ですので、サードパーティ製ドライバによって 異なることがあります。
// Clear the cache for a specific Smarty template
$view = View::forge('example.smarty');
$view->parser()->clearCache('example.smarty');
// Example static usage
View_Smarty::parser()->clearCache('example.smarty');