Php 使用imap_fetchbody时邮件正文不清晰
我正在使用以下代码来删除邮件正文Php 使用imap_fetchbody时邮件正文不清晰,php,email,Php,Email,我正在使用以下代码来删除邮件正文 $imap = imap_open($mailbox,$user,$password); $mails = imap_search($imap,'UNSEEN'); foreach($mails as $mail) { $message = trim(utf8_encode(quoted_printable_decode(imap_fetchbody($imap,$mail,"1")))); if(strpos($message,"<html")
$imap = imap_open($mailbox,$user,$password);
$mails = imap_search($imap,'UNSEEN');
foreach($mails as $mail)
{
$message = trim(utf8_encode(quoted_printable_decode(imap_fetchbody($imap,$mail,"1"))));
if(strpos($message,"<html") !== false)
{
$mail_body = fopen($dir."mail.html","w");
}
else
{
$mail_body = fopen($dir."mail.txt","w");
}
}
$imap=imap\u打开($mailbox、$user、$password);
$mails=imap_search($imap,'UNSEEN');
foreach($mails作为$mail)
{
$message=trim(utf8编码(引用可打印解码(imap)获取正文($imap,$mail,“1”));
如果(strpos($message,“我终于找到了一个解决方案。原因似乎是转发的邮件,最初是从苹果设备发送的
现在我用它来提取信息,它就工作了
$structure = imap_fetchstructure($imap, $mail);
$part = $structure->parts[1];
$message = imap_fetchbody($imap,$mail,1);
if(strpos($message,"<html") !== false)
{
$message = trim(utf8_encode(quoted_printable_decode($message)));
}
else if($part->encoding == 3)
{
$message = imap_base64($message);
}
else if($part->encoding == 2)
{
$message = imap_binary($message);
}
else if($part->encoding == 1)
{
$message = imap_8bit($message);
}
else
{
$message = trim(utf8_encode(quoted_printable_decode(imap_qprint($message))));
}
$structure=imap\u fetchstructure($imap,$mail);
$part=$structure->parts[1];
$message=imap_fetchbody($imap$mail,1);
如果(strpos($message),“您是否首先验证了这些邮件实际上没有加密?是的,它们没有加密。问题是邮件和转发邮件的编码。