【问题标题】:Laravel/Blade -- is there a way to escape all output except formatting-type tags?Laravel/Blade——有没有办法转义除格式化类型标签之外的所有输出?
【发布时间】:2016-01-07 17:43:03
【问题描述】:

我正在学习来自 javascript 背景的 Laravel,所以我对 PHP 不是很熟悉。我正在尝试制作一个具有 textarea 输入的应用程序,并显示使用 markdown 格式化的输入。我使用Parsedown 将markdown 解析为HTML,然后在我的刀片模板中使用:

{!! $post->body !!}

显示它。它是用 HTML 格式化出来的,但当然这也有<script> 标签等被未转义的风险。

是否有一种简单的方法可以确保只有 <p><ul><em> 和其他由 markdown 创建的内容未转义?

【问题讨论】:

    标签: php html laravel markdown blade


    【解决方案1】:

    据我所知,Laravel 并没有为此提供开箱即用的解决方案。如果您可能对清理潜在的可疑输入感兴趣,请查看 HTML Purifier for Laravel

    【讨论】:

      【解决方案2】:

      您可以将自己的自定义标签添加到刀片引擎,我回家后会提供链接。作为第二种解决方案,您可以创建一个扩展。 Blade extension (laravel docs)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-08-27
        • 2014-11-26
        • 2012-12-19
        • 1970-01-01
        • 2015-04-15
        • 1970-01-01
        相关资源
        最近更新 更多