我需要能够从 php 脚本中使用我的 gmail。但无论我尝试什么,消息正文都带有 =3D 和随机等号等字符。有时它会以 base64 的形式出现,或者什么都没有。如果没有可用的 html,我如何获取电子邮件并在 HTMLPurifier 干净的 html 或纯文本中显示它。
$overview = imap_fetch_overview($inbox,$email_number,0);
$body_pre = imap_fetchbody($inbox, $email_number, 2.1);
$message = imap_fetchbody($inbox, $email_number, 2.2);
$message = base64_decode($message);
if (empty($message))
{
$message = $body_pre;
$message = preg_replace('@(https?://([-\w\.]+)+(:\d+)?((/[\w/_\.%\-+~]*)?(\?\S+)?)?)@', '<a href="$1">$1</a>',$message);
$message = '<pre>'.htmlentities($message).'</pre>';
}else{
$cleanconfig = HTMLPurifier_Config::createDefault();
$cleanconfig->set('Core.Encoding', 'UTF-8');
$cleanconfig->set('HTML.Doctype', 'HTML 4.01 Transitional');
$purifier = new HTMLPurifier($cleanconfig);
$message = $purifier->purify($message);
}
这段代码,$message 只是空白。