在laravel框架中我们可以使用blade在html文件中添加PHP代码。
我们在 Laravel 的 Blade 文件中同时使用
{{ }}
和 {!! !!}
语法。 如果您将数据从控制器传递到具有某些 HTML 样式的视图,例如:
$first = "<b>Narendra Sisodia</b>";
在 Blade 中使用
{{ $first }}
访问它,那么输出将是:
<b>Narendra Sisodia</b>
但是如果使用
{!! $first !!}
访问它,那么输出将是:
纳伦德拉·西索迪亚
如果您不想转义数据,请使用
{!! !!}
,否则使用 {{ }}
。
逃避数据使用
{{ $data }}
如果您不想转义数据,请使用以下
{!! $data !!}
来自文档:https://laravel.com/docs/5.1/blade
默认情况下,Blade
{{ }}
语句会通过 PHP 的 htmlentities 函数自动发送,以防止 XSS 攻击。如果您不希望数据被转义,您可以使用以下语法:
Hello, {!! $name !!}.
Blade {{ }}语句通过PHP的htmlentities函数自动发送,防止XSS攻击。
您可以在这里查看更多内容:https://laravel.com/docs/master/blade
在 Laravel 中
{{ }}
应以纯文本形式传递数据并进行 HTML 转义,而 {!! !!}
按原样内容传递数据,不进行任何 HTML 转义。
例如:我有一个
$status = '<b>Active Status</b>';
变量,它将 HTML 内容存储为数据。
现在,如果我将此数据写为
{{ $status }}
那么它将作为 plain text
返回。
预期输出是:
<b>Active Status</b>
但是如果我将此数据写为
{!! $status !!}
那么它将作为 HTML
代码返回。
预期输出是:
𝗔𝗰𝘁𝗶𝘃𝗲 𝗦𝘁𝗮𝘁𝘂𝘀