我正在尝试使用 PHP 提取一些编码电子邮件的一些内容,但我不能。
有了这个:
$body = imap_body($imap_o, $email_n);
我得到:
Pour = le r=E9cup=E9rer, il suffit de le t=E9l=E9charger, de le r=E9ceptionner puis de l=92ouvrir.=Une f= ois votre traduction termin=E9e, n=92oubliez pas de sauvegarder vos paires de langues et d=92effectuer une v=E9rification g=E9n=E9rale (statuts des segments, b= alises, nombres, espaces, majuscules, etc.).Ensui= te, cliquez sur =AB=A0Terminer et livrer=A0=BB.Voici le r=E9capitulatif du projet=A0:
但是有很多
=*
。我知道=20
是一个空格,但这里还有其他我不知道它们是什么意思。
如果我添加
quoted_printable_decode()
:
$body = quoted_printable_decode($body);
我得到:
Pour le r�cup�rer, il suffit de le t�l�charger, de le r�ceptionner puis de l�ouvrir. Une fois votre traduction termin�e, n�oubliez pas de sauvegarder vos paires de langues et d�effectuer une v�rification g�n�rale (statuts des segments, balises, nombres, espaces, majuscules, etc.). Ensuite, cliquez sur ��Terminer et livrer��. Voici le r�capitulatif du projet�:
我添加了
imap_qprint()
和utf8_decode
,但没有任何改善...
在解码这些消息之前,我需要发送这些消息的“干净”副本,不带任何信息,如果我能够以纯格式获取这些消息,它将帮助我更快、更轻松地完成任务。
如果我需要删除正文中的一些单词我该怎么办?
尝试
$body = utf8_encode(quoted_printable_decode($body));
编辑:从 PHP 8.2 开始,
utf8_encode()
和 utf8_decode()
已弃用。您应该使用 mb_convert_encoding()
来代替:
$body = mb_convert_encoding(quoted_printable_decode($body), 'UTF-8', 'ISO-8859-1');
也许你可以设置文件编码。 在dw中,ctrl+j,标题编码设置,utf8无bom。或者记事本2,文件>编码>utf8
但是您不能使用 utf8_encode,因为您需要删除 utf8 才能正确使用它。