【发布时间】:2016-03-02 20:28:24
【问题描述】:
有没有办法在 Flash 消息中包含 html 标签。我有以下内容,但标签在刀片中呈现时会被转义?
flash()->success('Confirmation email sent to <strong>' . $user->email . '</strong>');
【问题讨论】:
标签: html laravel-5.1 laravel-blade
有没有办法在 Flash 消息中包含 html 标签。我有以下内容,但标签在刀片中呈现时会被转义?
flash()->success('Confirmation email sent to <strong>' . $user->email . '</strong>');
【问题讨论】:
标签: html laravel-5.1 laravel-blade
你必须使用刀片的非转义语法
{!! $flashData !!} // unescaped variable
代替:
{{ $flashData }} // escaped variable
最好默认使用转义语法,因为它可以阻止行为不端的用户提供<script> 标记和javascript 代码作为应用程序的输入。如果没有删除 html 标记和 javascript,这可能是一个安全问题。因此,除非您 100% 确定其安全,否则我会非常小心地取消转义数据。
另外,只是需要考虑一下:为什么需要 Flash 数据中的 html?为什么你不能自己发送$user->email,让视图弄清楚如何渲染它。将您的 html 标记保留在您的视图中 - 这更清晰。
查看文档http://laravel.com/docs/5.1/blade#displaying-data 搜索“显示未转义的数据”
【讨论】: