webiik / view
视图提供了渲染模板的通用接口,无论您想使用哪种模板引擎。默认情况下,它支持Twig。
1.2
2020-06-08 16:45 UTC
Requires
- php: >=7.2
This package is auto-updated.
Last update: 2024-09-09 02:27:13 UTC
README
视图
视图提供了渲染模板的通用接口,无论您想使用哪种模板引擎。默认情况下,它支持Twig模板引擎。
安装
composer require webiik/view
示例
$view = new \Webiik\View\View(); // Prepare Twig renderer factory $renderer = function() { // Instantiate Twig template engine $loader = new Twig_Loader_Filesystem(__DIR__ . '/view'); $environment = new Twig_Environment($loader, array( 'cache' => __DIR__ . '/tmp/view' )); // Instantiate and return Twig renderer return new \Webiik\View\Renderer\Twig($environment); }; // Add renderer $view->setRenderer($renderer); // Render template echo $view->render('test.twig', ['foo' => 'meow']);
配置
setRenderer
setRenderer(callable $factory):void
setRenderer() 添加一个渲染器 - 模板引擎的RendererInterface实现的工厂。
$view->setRenderer($renderer);
编写自定义渲染器
您可以编写自己的自定义渲染器。您需要做的只是实现 RendererInterface。查看 RendererInterface在Twig模板引擎上的实现,以获得更好的见解。
渲染
render
render(string $template, array $data = []): string
render() 将模板渲染为字符串。
参数
- template 要渲染的模板名称
- data 传递给模板的数据数组
echo $view->render('test.twig', ['foo' => 'meow']);
其他
getTemplateEngine
getTemplateEngine()
getTemplateEngine() 获取由渲染器使用的模板引擎的对象。
$view->getTemplateEngine(); // e.g. returns Twig_Environment