在PHP中删除标签(也在源代码中!)

时间:2013-09-16 10:07:36

标签: c# html

我刚刚删除了我的问题,因为我认为它是重复的: Strip Tags and everything in between 但是:那里给出的选项只是“隐藏”标签。检查源代码时,标签仍然存在。

当我查看代码的来源时,我的备忘录会在。

中生成一个全新的HTML页面
<td>Memo:</td><td><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
    <head>
        <meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8" /><title>
        </title>
        <style type="text/css">
            .cs95E872D0{text-align:left;text-indent:0pt;margin:0pt 0pt 0pt 0pt}
            .csEE99116A{color:#08343E;background-color:transparent;font-family:Arial; font-size:12pt; font-weight:normal; font-style:normal; }
        </style>
    </head>
    <body>
        <span><p class="cs95E872D0"><span class="csEE99116A">dubbel test hoi</span></p></span></body>
</html>
</td>

现在,我唯一想看到的是dubbel test hoi中的<span><p class="cs95E872D0"><span class="csEE99116A">dubbel test hoi</span>我确实看到了,但在源代码中它仍然看起来很糟糕。

我尝试了所有类型的功能,其中大多数都删除了一些东西但是留下了CSS IDS,有些只是“隐藏”它,所以它仍然可以在源代码中使用。

有什么建议吗?

我的输入文本是来自PHP表单的纯文本,然后它进入数据库并被发送到C#应用程序,该应用程序将文本转换为RTF。在我的“仪表板”的这个页面中,我请求文本(现在是RTF),并将RTF转换为HTML文本。

这是我将文本转换为HTML文本的代码:

private string ConvertToHtml(string value)
        {
            if (RtfTags.IsRtfContent(value))
            {
                using (RichEditDocumentServer richServer = new RichEditDocumentServer())
                {
                    string htmlText = string.Empty;
                    richServer.RtfText = value;
                    CharacterProperties cp = richServer.Document.BeginUpdateCharacters(richServer.Document.Range);
                    cp.FontName = "Arial";
                    cp.FontSize = 12;
                    cp.ForeColor = System.Drawing.ColorTranslator.FromHtml("#08343e");
                    richServer.Document.EndUpdateCharacters(cp);
                    htmlText = richServer.HtmlText;
                    return htmlText;
                }
            }
            else
            {
                return value;
            }
        } 

1 个答案:

答案 0 :(得分:3)

我在这里http://www.php.net/manual/en/function.strip-tags.php#17656找到了解决方法。 只需替换样式代码,然后使用strip_tags:

$htmlstring = preg_replace("'<style[^>]*>.*</style>'siU",'',$htmlstring);
echo strip_tags($htmlstring);