themosis / twig
为 Themosis 提供的 Twig 模板引擎支持。
dev-main
2024-09-10 18:08 UTC
Requires
- php: ^8.0
- illuminate/config: ^9.5
- illuminate/events: ^9.5
- illuminate/support: ^9.5
- illuminate/view: ^9.5
- twig/twig: ^3.3
Requires (Dev)
- phpunit/phpunit: ^9.5
This package is auto-updated.
Last update: 2024-09-10 18:08:36 UTC
README
此包为 Themosis 添加了对 Twig 模板引擎的支持。
安装
要从终端安装此包,请运行以下命令
composer require themosis/twig
配置
此包附带一个 twig.php
配置文件。如果它没有自动安装到您的应用程序中,您可以从终端运行以下命令
php artisan vendor:publish --provider="Themosis\Twig\TwigServiceProvider"
使用方法
此包为 Laravel 的视图 API 提供了 Twig 引擎。基本上,您现在可以使用 .twig
文件扩展名创建视图,而不是使用 .php
或 .blade.php
扩展名。
与任何其他视图一样, Twig 视图的位置相同。所有视图目录都存储在 config/view.php
配置文件的 paths
属性下。
要控制 Twig 引擎,您可以在 config/twig.php
文件中修改其配置。
创建 Twig 视图
/** * From a controller method, return a Twig view: * This line is rendering the following view file `resources/views/welcome.twig`. */ return view('welcome'); /** * You can also render nested Twig views using the "." syntax. * This example is rendering the following view file `resources/views/pages/contact.twig`. */ return view('pages.contact');
传递数据
就像任何 Blade 视图一样,您可以使用 Laravel 文档中定义的相同参数将数据传递给 Twig 视图
/** * Passing data using the array parameter of the view function. */ return view('person', [ 'name' => 'Carla' ]);
以下是 person.twig
文件的示例
<div> <p>{{ name }}</p> </div>
您还可以使用视图的 with() 方法将数据传递到您的 Twig 模板。
Twig WordPress 扩展
此包附带一个 Twig WordPressExtension
。请参阅 扩展文件,以了解此扩展在您的 Twig 模板中提供的可用函数和过滤器。
注意使用
fn
全局对象,它可以帮助您调用任何 PHP 函数。例如:fn.ucfirst('twig')
。
注意事项
有关学习 Twig 模板引擎语法的详细信息,请参阅官方 Twig 文档