在laravel框架中,我们可以使用blade在html文件中添加PHP代码。
我们在Laravel的刀片文件中使用了{{ }} and {{{ }}}
语法。
他们之间有什么区别?
我在这样的刀片文件中有代码
{{{ $errors->has('slider') ? 'has-error' : '' }}}
答案 0 :(得分:5)
在Laravel 5之前:
{{{ $var }}}
转义$ var {{ $var }}
回应$ var unescaped 自Laravel 5开始:
{!! $var !!}
回应$ var unescaped {{ $var }}
转义$ var 答案 1 :(得分:5)
Laravel 5中的{{ }}
和{{{ }}}
之间没有区别。
在版本4中,它包括以下两种样式:“{{”和“{{{”。双 花括号是原始回声,三重花括号逃脱。
目前在5.0中,双花冠和三花括号都逃脱了 变量和新的“{!! $ var !!}“是原始的。
答案 2 :(得分:3)
{{{
呈现HTML数据,但{{
显示数据和元素而不呈现。
前:
$str = "<h3>tuytoosh is here</h3>";
{{ $str }}
输出:<h3>tuytoosh is here</h3>
{{{ $str }}}
输出:
答案 3 :(得分:2)
Laravel 4 {{{ $var }}}
用于通过转义使用PHP htmlentities
函数的HTML实体来防止XSS攻击来呈现数据。
{{ $var }}
用于在不转义HTML实体的情况下呈现数据。
在 Laravel 5 中略有不同,您可以使用{{ $var }}
或{{{ $var }}}
来转义数据并呈现未使用的非转义数据{!! $var !!}
。
答案 4 :(得分:0)
这里没有提到我所提到的东西,但是这很容易知道。如果您的翻译文本带有应在结果html中成为Vue变量的参数,则三重花括号会派上用场。
例如:
{{{ __('This window will close in :timeout seconds', ['timeout' => '@{{timeoutSecs}}']) }}}
尝试使用花括号的任何其他组合进行此操作都会引发一些错误。