如何从字符串渲染HTML?

时间:2019-02-28 07:17:47

标签: php html laravel laravel-blade

我在Laravel控制器中有一个PHP变量:$html= '<img src="/example.png">'

然后在视图刀片中,我用{{$html}}显示了它。

但是它不呈现为html元素。它在浏览器中显示为文本/字符串,例如<img src="/example.png">

2 个答案:

答案 0 :(得分:2)

您应该使用:

{!! $html !!}

选中this answer,它也记录在official documentation的“显示未转义的数据”部分

答案 1 :(得分:0)

显示未转义的数据

默认情况下,Blade {{}}语句通过PHP的htmlentities函数自动发送,以防止XSS攻击。如果您不想转义数据,则可以使用以下语法:

Hello, {!! $name !!}.

参考https://laravel.com/docs/5.1/blade#displaying-data