2

我尝试将 HTML 净化器与 Laravel 集成(https://github.com/mewebstudio/Purifier)。

作为文档,这里是配置文件 purifier.php

return array(
"settings" => array(
    "HTML.Allowed" => "div,p[align|style],strong,a[href|title|mailto],em,table[class|width|cellpadding],td,tr,h3,h4,h5,hr,br,u,ul,ol,li,img[src|width|height|alt|class],span[class|style],strike,sup,sub,code",
    "HTML.SafeIframe" => 'true',
    "URI.SafeIframeRegexp" => "%^(http://|https://|//)(www.youtube.com/embed/|player.vimeo.com/video/)%",
),

);

在这个配置中,我尝试允许 H3、H4,但它们总是被剥离。我正在使用 PHP 5.5.4

任何帮助将不胜感激。

4

2 回答 2

0

或者,这似乎有效(参考https://github.com/mewebstudio/Purifier/blob/master/src/Mews/Purifier/Purifier.php#L81

return array(
    "default" => array(
        "settings" => array(
            "HTML.Allowed" => "div,p[align|style],strong,a[href|title|mailto],em,table[class|width|cellpadding],td,tr,h3,h4,h5,hr,br,u,ul,ol,li,img[src|width|height|alt|class],span[class|style],strike,sup,sub,code",
            "HTML.SafeIframe" => 'true',
            "URI.SafeIframeRegexp" => "%^(http://|https://|//)(www.youtube.com/embed/|player.vimeo.com/video/)%",
        ),
    ),
);
于 2013-10-31T10:33:23.160 回答
0

我自己找到了答案。我必须加载配置并使用 Purifier::clean 启动它,如下所示:

$purifier_config = Config::get('purifier.settings');
$content = Purifier::clean($content, $purifier_config);
于 2013-10-04T15:24:38.980 回答