使用 Blade 从命令行渲染文件

Laravel

使用 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 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

原文地址:https://laravel-news.com/blade-cli

译文地址:https://learnku.com/laravel/t/68680

本文为协同翻译文章,如您发现瑕疵请点击「改进」按钮提交优化建议
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!