在 Laravel Blade 模板中优雅地分配变量
在 Laravel 的 Blade 模板系统中,设置变量并不像看起来那么简单。为了避免回显该值,请考虑以下优雅的方法:
简化方法:
使用 Blade 指令的完整形式简洁地定义多个变量:
@php $i = 1; $j = 2; @endphp
对于单变量定义,简化进一步:
@php($i = 1)
高级方法:自定义 @define 标签:
要获得更具可定制性的解决方案,请使用您自己的 @define 标签扩展 Blade:
\Blade::extend(function($value) { return preg_replace('/\@define(.+)/', '<?php ; ?>', $value); });
然后您可以使用该标签作为如下:
@define $i = 1
用法:
将自定义扩展代码放在 AppServiceProvider.php 的 boot() 函数中以进行快速修复。为了实现更永久的实现,请创建一个自定义服务提供程序,如问题答案中提供的参考中所述。
请记住,这些方法允许您在 Blade 模板中定义变量,而不会干扰代码流。
以上是如何在 Laravel Blade 模板中优雅地分配变量?的详细内容。更多信息请关注PHP中文网其他相关文章!