我目前正在开发Laravel 5.1项目并使用Blade模板引擎。
Blade提供的语法通常会逃避所有用户输入,如下所示:
{{ $value }}
我现在想要在输出时远离用户输入的所有内容,但网址,以便使链接可以点击。
例如,链接
http://google.de/
应该被捕获(即通过某个RegEx)并转换为:
<a href="http://google.de">http://google.de/</a>
我确实有可能在我的AppServiceProvider中使用普通PHP(遍历文本,用可点击的HTML元素替换文本链接,并将不链接的所有内容替换为相应的HTML-Entity)对应物)。
然而,由于这是一个框架,并且框架旨在减轻重复发明轮子的负担,我希望有一些比我在其他所有PHP脚本中做的更好的解决方案。
答案 0 :(得分:0)
我不知道我是否明白了,但
{!! $value !!}
将阻止默认刀片转义。因此,如果您的刀片视图中有一个$link
变量等于http://google.de/
,那么您肯定可以将其显示为未转义:
<a href="{!! $link !!}">{!! $link !!}</a>