使用 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

本文为协同翻译文章,如您发现瑕疵请点击「改进」按钮提交优化建议
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

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