检测纯文本或 html
在我的应用程序中,我使用 PHP 处理邮件文本。对于某些邮件客户端(例如 sina.com),会发送错误的标头。例如,他们发送 HTML 邮件,但将标头 Content-Type 作为文本/纯文本发送。
现在,对于这些邮件,我的应用程序将 HTML 视为文本。在 PHP 中如何检测文本是否包含 html 文本?
In my application I am processing mail texts using PHP. For some mail clients such as sina.com is sending bad headers. For example, they are sending HTML mail but sending the header Content-Type as text/plain.
Now, for these mails, my application is considering the HTML as text. In PHP how can I detect if a text contain html text or not?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
是的,您可以使用
strip_tags()
并将过滤后的邮件正文与原始邮件正文进行比较,看看是否有任何差异,但不要忘记,在纯文本中,您可能有 HTML 标签作为普通文本,我认为strip_tags()
也会删除这些标签。Yes, you can use
strip_tags()
and compare filtered mail-body with original one to see are there any differences but don't forget, in plain-text you may have HTML tags as normal text and I think thatstrip_tags()
will remove these tags too.如果匹配,则它是 HTML。
If this match, then it is HTML.