有没有办法在flash消息中包含html标签。我有以下但是在刀片中渲染时标签会被转义?
flash()->success('Confirmation email sent to <strong>' . $user->email . '</strong>');
答案 0 :(得分:11)
您必须使用刀片的未转义语法
{!! $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搜索“显示未转义数据”