NaifyViewExtension\Dialect\Twig\TwigExtension クラス
TwigExtension — Twig向けの変換とフィルターをまとめて使う
描画用にはフィルターとIRプロバイダーをCoreへ登録する。 移行結果を確認したい場合はconvert()でNativeソースを、convertToIr()でIRを取得する。 本家Twigの全機能を実行するエンジンではなく、対応する構文をCoreへ橋渡しする。
使用例
use NaifyViewExtension\NaifyViewExtension;
$config = NaifyViewExtension::configure(__DIR__ . '/views')
->twig()
->setCacheDir(__DIR__ . '/cache/views')
->setAutoEscape(true);
$view = NaifyViewExtension::create($config);
echo $view->render('hello.twig', ['name' => 'Naify']);
プロパティ
| 名前 | 型 | 説明 |
|---|---|---|
private
$filter
|
?TwigFilter |
注入された、または初回利用時に生成する部品 |
private
$converter
|
?TwigTemplateConverter |
注入された、または初回利用時に生成する部品 |
private
$templateIrProvider
|
?TwigTemplateIrProvider |
注入された、または初回利用時に生成する部品 |
メソッド
| メソッド | 説明 |
|---|---|
public
__construct(?TwigFilter $filter, ?TwigTemplateConverter $converter, ?TwigTemplateIrProvider $templateIrProvider):
|
必要な部品を差し替えて拡張を用意する
省略した部品は、初めて使うときに既定の実装を生成する。 |
public
extend(NaifyViewExtensionRegistry $registry): void
|
描画用のフィルターとIRプロバイダーを登録する |
public
getFilter(): TwigFilter
|
この拡張で再利用するフィルターを取得する |
public
getConverter(): TwigTemplateConverter
|
手動変換に使う変換器を取得する |
public
getTemplateIrProvider(): TwigTemplateIrProvider
|
描画時にIRを供給するプロバイダーを取得する |
public
convert(string $twigSource): TwigTemplateConversionResult
|
ソースをNative構文へ寄せ、変換結果と注意点を返す
返却値のisComplete()とgetUnsupported()を確認してから移行先で使う。 |
public
convertToIr(string $twigSource): TwigTemplateConversionResult
|
ソースをCoreの中間表現へ変換する |