使用imap_fetchbody函数无法获取完整的正文消息?

时间:2016-09-24 11:29:41

标签: php imap

$emails = imap_search($inbox,'ALL');

foreach($emails as $email_number) {
        $message = imap_fetchbody($inbox,$email_number,2);
echo $message;

}

我正在尝试使用imap_fetchbody函数获取gmail电子邮件的正文,但我无法获取图像和CSS我不知道出了什么问题?任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

Imap非常复杂,但是没有看到电子邮件,我的猜测是电子邮件要么嵌入文件,要么是提取纯文本而不是HTML,所以你需要使用{{ 1}}获取所有部分,然后重建电子邮件。

几个月前我为此写了一篇非常全面的包装器,欢迎您在我的GitHub上查看:

https://github.com/craigh411/ImapMailManager

特别是,您可能会发现我的工厂很有用,它可以处理您正在尝试的相当多的工作类型:

https://github.com/craigh411/ImapMailManager/blob/master/src/Factories/ImapMessageFactory.php

电子邮件并非微不足道,我花了几周的时间来编写该软件包,虽然它正式处于测试阶段,但它经过了很好的测试,因此如果您愿意,您应该能够毫不费力地使用它。