【问题标题】:Is there a way to decode html e-mails?有没有办法解码 html 电子邮件?
【发布时间】:2010-10-09 09:40:16
【问题描述】:

我正在编写支持软件,我认为如果要突出显示内容,那么支持 HTML 会很棒。

看着Outlook“HTML”我想爬到胎位哭!

是否有一个 php 类来解读 HTML 电子邮件以支持基本 HTML?我不想在框架中显示电子邮件,因为我想处理数据并对其进行分析。我也不想支持像更改字体这样愚蠢的事情,因为它是一个 web 应用程序,我希望我的 web 应用程序说出字体是什么,而不是让一些嬉皮士以漫画 sans 和黄色发送支持团队的电子邮件。我想支持粗体、斜体、下划线、拉伸和列表 (http://dl.getdropbox.com/u/5910/Jing/2009-02-23_2100.png)。

我也不太清楚富文本和 html 之间的区别,因为我一直认为富文本只允许我想要的功能,但我似乎能够在富文本中做我可以在 Html 中做的所有事情.

另外我应该补充一下,我正在使用 Zend 框架,因为 Zend_Mail 很棒

【问题讨论】:

    标签: php email class decode


    【解决方案1】:

    您可以通过htmltidy 对其进行管道传输,然后使用HtmlPurifier 之类的内容对其进行进一步过滤,但当然您可以删除对理解内容至关重要的内容。这就是视觉格式的问题,比如 html。

    【讨论】:

      【解决方案2】:

      您可以使用 PHP 的 strip_tags() 函数,它是可选的“allowable_tags”参数。这将允许您删除所有不是<em> <b> <strong> <u> 等的标签。

      关于 RTF 与 HTML,我的理解是,当 Outlook 和 Exchange 与不符合 RTF 的系统通信时,它们会将 RTF 转换为 HTML。我不确定这是否总是正确的,或者该功能是否一致,但这可能解释了为什么发送的 RTF 消息似乎是 HTML。

      【讨论】:

      • 我的名单没那么多 :( dl.getdropbox.com/u/5910/Jing/2009-02-23_2100.png FU Outlook!(对不起)
      • strip_tags 是不够的,如果您不信任用户(这里可能是也可能不是)。请改用 HtmlPurifier。
      • HTMLPurifier 看起来很好吃!只需让它与 Zend 框架一起工作 :)
      • @Thomaschaaf,这太丑了。如果您只担心 ul 的问题,您可能可以先将它们全部替换,因为代码至少是一致的,ol 可能也很丑陋但一致,但您可能又要重新编写自己的库了。
      【解决方案3】:

      我很确定你必须编写自己的类...在我见过的 PHP 文档中没有像这样的真正类..

      【讨论】:

      • 我在想有人写的一门课,因为我得看看所有主要人物都做了什么糟糕的事情。Outlook、Apple Mail、Windows Live Mail、gmx、gmail ......
      【解决方案4】:

      或者您可以使用附加到电子邮件的纯文本变体。如果没有纯文本变体,您可以使用 html 的剥离版本。我认为使用这些步骤你会得到一个很好的结果:

      1. 删除换行符
      2. </p><br/> 变成换行符
      3. 去除所有 html 标签

      【讨论】:

      • 不允许我使用粗体、斜体、下划线、拉伸和列表。
      【解决方案5】:

      从 Outlook 邮件中提取 HTML 一开始可能看起来很吓人,但它只是 HTML 标签 - 只是其中的一大堆!

      因此,如果您只是定位到“”,那么您就有了一个标签。如果它不是你想要的东西,比如“”,就把它扔掉,然后重复 Simple as that。

      (我在拼写和语法检查器中完全做到了这一点,它不仅从 Outlook 中提取纯文本并检查它 - 然后它可以将所有用户的更改推回 HTML 而不破坏任何标签。后者是 不过不容易!;-)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-07-07
        • 2017-03-24
        • 1970-01-01
        • 2013-10-19
        • 2021-06-12
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多