stillat / blade-parser
本包最新版本(v1.8.0)无可用许可信息。
v1.8.0
2024-04-16 23:14 UTC
Requires
- php: ^8.1
- laravel/framework: ^9.36 || ^10.0 || ^11.0
Requires (Dev)
- brianium/paratest: *
- laravel/pint: ^1.4
- orchestra/testbench: *
- phpunit/phpunit: ^8.5 || ^9.0 || ^10.0
- dev-master
- v1.8.0
- v1.7.2
- v1.7.1
- v1.7.0
- v1.6.1
- v1.6.0
- v1.5.1
- v1.5.0
- v1.4.0
- v1.3.0
- v1.2.0
- v1.1.1
- v1.1.0
- v1.0.3
- v1.0.2
- v1.0.1
- v1.0.0
- v0.0.2
- v0.0.1
- dev-laravel-11-support
- dev-validate-command-failing-on-unrecognized-directives
- dev-php-nodes-additional-tests
- dev-improves-json-directive-compilation
- dev-rewrite-document-utilities
- dev-name-attributes-on-slots
- dev-add-args-splitter
- dev-parse-only-components
This package is auto-updated.
Last update: 2024-09-17 00:09:14 UTC
README
Blade Parser 是一个 Laravel 库,它使得解析、分析和操作 Blade 模板变得简单。
该库由许多主要组件组成
- 解析器:一个 Blade 解析器,它可以生成一个节点列表,这些节点可以用来分析模板并作出决策。
- 文档:一个强大的抽象,使得与单个解析的 Blade 模板的细节交互变得更加简单。
- 工作空间:一组简单的 API,使得同时处理多个解析的 Blade 模板变得轻松。
- 编译器:一个高度可配置的 Blade 编译器实现,支持预编译器、扩展和现有的第三方包。
- 验证器:一个可扩展的验证 Blade 文档的系统,默认验证器能够检测未配对的条件、无效的组件参数间隔等。
易于使用
使用 Documents API 解析 Blade 模板非常简单。例如,解析模板所需的所有内容如下
<?php use Stillat\BladeParser\Document\Document; $template = <<<'BLADE' Hello, {{ $world }} BLADE; $document = Document::fromText($template);
Document
类提供了一种强大的抽象,使得快速检索模板信息变得简单。
例如,如果我们想从模板中提取所有组件,我们可以这样做
<?php // Do something with all component tags in the template. $document->getComponents() ->each(fn($node) => ...);
如果我们只对名为 alert
的组件感兴趣,我们可以使用以下方式
<?php // Find all "alert" components. $document->findComponentsByTagName('alert') ->each(fn($node) => ...);
这些例子只是冰山一角,我们鼓励您阅读文档。
内置验证命令
此库还附带了一个可配置的 blade:validate
Artisan 命令,可用于验证项目中的所有 Blade 模板。
要配置该命令,您需要使用以下命令发布其配置文件
php artisan vendor:publish --tag=blade
要运行针对您的项目的验证,您可以发出以下 Artisan 命令
php artisan blade:validate
如果检测到任何验证问题,它们将在您的终端中显示。
有许多配置选项可用,如果您想了解更多,可以在配置验证命令文章中找到。
许可
此解析库是开源软件,许可协议为MIT 许可。