PHP在html页面中显示html电子邮件

Ste*_*one 7 php email html-email

我正在构建一个PHP电子邮件邮箱脚本.

我如何使html电子邮件干净利落地显示在gmail/hotmail中.

如果我只是回应它,它会影响整个页面布局.

我可以使用iframe但肯定不是最好的解决方案.

tca*_*les 5

正如Marc B所述,我相信IFrame是你最好的选择...但请注意,如果你只是转储任何电子邮件HTML代码,你就有可能暴露自己的病毒,特洛伊木马和恶意HTML/JavaScript代码 - 你的开放潘多拉盒子您的计算机,除非您找到一个好的方法来沙箱/剥离该HTML.

这是一个简单的正则表达式,至少可以清除JavaScript:

"(?s)<script.*?(/>|</script>)"
Run Code Online (Sandbox Code Playgroud)

  • 该正则表达式只清除`<script>`块,HTML标签中没有内联JavaScript!但我同意,整件事情并不容易! (3认同)

Tim*_*lvy 5

如果您正在寻找“最佳解决方案”,那么可以使用另一个做与您相同的开源电子邮件库。独自维护一个电子邮件渲染器,以防脚本注入和其他黑客攻击,对于一个人来说,这将是一件繁重的工作。

一个例子:https : //github.com/afterlogic/webmail-lite

另一个:http//trac.roundcube.net/

您会从使用该库维护代码库的其他开发人员中受益,因此,如果出现问题,您所要做的就是(希望)获取最新更新,并获得修复。如果发现需要改进的地方,则可以对其进行修复或构建,并使每个人的代码都更好。我实际上只是在这里介绍开源库,但是在任何商业环境中,在没有大型团队的情况下构建自己的电子邮件渲染器都是一个坏主意。