使用 Blade 从命令行渲染文件
使用 Laravel Blade CLI ,可以让 Blade 引擎从命令行渲染文件。 这个包不能 100% 支持你在 Laravel 中可能熟悉的所有 Blade 指令的 ,但支持常见的指令,如@if
、@else
、@foreach
、@forelse
、@while
、 等等。
示例:
name: {{ $name }}
relationship: {{ $relationship }}
favorite_food: {{ $favoriteFood }}
@if($includeAddress)
address: "123 example lane"
@endif
你可以在 CLI 中渲染该文件:
blade render ./person.yml \
--name="Bob" \
--relationship="Uncle" \
--favorite-food="Pizza" \
--include-address \
--save-directory="build/"
这会将文件保存在./build/person.yml
通过 composer 全局安装此项目,你可以访问 blade
CLI 命令。也可以直接使用此包中的代码:
use BladeCLI\Blade;
use Illuminate\Container\Container;
use Illuminate\Filesystem\Filesystem;
$blade = new Blade(
container: new Container,
filesystem: new Filesystem,
filePath: '/path/to/file/to/render',
options: [
'force'=> true, // 强制覆盖现有的渲染文件
'save-directory'=>'save-to-dir' // 将渲染文件保存到的可选目录, 默认为当前目录。
]
);
// 用这个数据/变量渲染文件
$blade->render([
'var'=>'example'
]);
还可以使用 --from-json 标志通过 JSON 将数据传递到模板,该选项接受 JSON 文件的路径。最后,你可以使用此包处理整个模板目录:
php blade render templates/ --some-data=foo --force
要了解此扩展包、获取完整的安装说明请查看 GitHub 源代码。
本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。