adamgaskins / view-string
此包已被废弃,不再维护。作者建议使用 Laravel 9的Blade::render() 包代替。
view() 辅助函数的小伙伴;一个从字符串编译blade视图的函数。
v1.3.0
2022-05-03 17:54 UTC
Requires
- php: ^7.4|^8.0
- laravel/framework: ^7.0|^8.0|^9.0
Requires (Dev)
- orchestra/testbench: ^6.9|^7.4
- phpunit/phpunit: ^9.5
This package is auto-updated.
Last update: 2022-06-07 21:19:39 UTC
README
注意:由于Laravel 9已包含此功能,该包已过时。 view-string
已更新以支持Laravel 9,但由于迁移到使用 Blade::render()
非常简单,因此 view-string
将不会更新以跟进未来的Laravel版本。
如果您不喜欢“已废弃”的packagist状态,欢迎继续使用或将类复制到您的代码中。
view() 辅助函数的小伙伴;一个从字符串编译blade视图的函数。
安装
您可以通过composer安装此包
composer require adamgaskins/view-string
使用方法
此包允许您从字符串动态编译blade模板,而不是将其硬编码在网站的 resources/views
文件夹中。通常,这看起来像是一个可信的用户(开发人员/管理员)使用嵌入的 编辑器 编写blade模板,然后将其保存到数据库中。然后您可以轻松地按如下方式渲染模板
$design = Design::find(1); view_string($design->content, [ 'blogPost' => $post ]);
或者,如果您想将其包含在blade模板中,有一个指令可以这样做
@includeString($design->content [ 'blogPost' => $post ])
在您使用 view
的地方使用 view_string
,在您使用 @include
的地方使用 @includeString
。
eval
此包在后台使用eval。它不是沙盒化的。此包的目的是允许开发人员编写小型blade片段而无需部署。我不负责您允许互联网上的陌生人运行您的服务器上的代码时发生的情况。
我们在我公司使用此包来快速编写为我们的客户编写的自定义元素的小片段,这样每次用户请求更改时,我们就不需要做完整的网站部署。
测试
composer test
相关
wpb/string-blade-compiler
:这是一个我使用多年的优秀包,也是此包的灵感来源。但它的观点有点偏执,因为它完全替换了Illuminate\View\View
,导致在一些随机边缘情况中出现了 问题。
许可证
MIT许可证(MIT)。请参阅 许可证文件 以获取更多信息。