我有一个按钮在我的网站上,文本应该在2行。按钮中的文本由翻译功能用语言文件提供的内容填充。
现在,当我在语言文件中输入html(在本例中为trans()
)时,它将被转义而不被解析。
参考资料/lang/en/messages.php
return [
'iamaclown' = 'I am a<br>clown',
//...
];
资源/views/foo.blade.php
<button>{{ trans( 'messages.iamaclown' ) }}</button>
这给了我输出
I am a<br> clown
但我想
I am a
clown
有办法做到吗?
最佳答案
要显示未转换的数据,请将trans( 'messages.iamaclown' )
默认情况下,blade{!! trans( 'messages.iamaclown' ) !!}
语句通过php的htmlenties函数自动发送,以防止xss攻击。
如果不希望对数据进行转义,可以使用以下语法:
The name of the website is, {!! $websiteName!!}.
注意:在回显应用程序用户提供的内容时要非常小心。始终使用双大括号语法转义内容中的任何HTML实体。