Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 未编码为UTF-8的纯文本_Php_Email_Character Encoding - Fatal编程技术网

Php 未编码为UTF-8的纯文本

Php 未编码为UTF-8的纯文本,php,email,character-encoding,Php,Email,Character Encoding,我的脚本有问题。它阅读来自stdin的邮件,做任何需要的事情。我的脚本对于一些邮件客户端(如thunderbird或outlook.com)来说非常有用。主要的问题是,它不能与苹果公司的“邮件”程序一起工作(这在我的企业中非常常用) 由于某种原因,从邮件中读取的文本没有进行编码。例如: Respuesta 5 desde Mail El 17/03/2015, a = las 13:13, app@******.es = escribi=F3: --=3D=3D-- RESPONDER POR

我的脚本有问题。它阅读来自stdin的邮件,做任何需要的事情。我的脚本对于一些邮件客户端(如thunderbird或outlook.com)来说非常有用。主要的问题是,它不能与苹果公司的“邮件”程序一起工作(这在我的企业中非常常用)

由于某种原因,从邮件中读取的文本没有进行编码。例如:

Respuesta 5 desde Mail
El 17/03/2015, a = las 13:13, app@******.es = escribi=F3:

--=3D=3D--
RESPONDER POR ENCIMA DE ESTA L=CDNEA

Comunicaci=F3n

C=F3digo:   PRB03154
Nombre del grupo:   MYSTICA

Prueba de = comunicaciones a trav=E9s de mails

Comunicaci=F3n enviada por **** (Departamento de = ****)
正如您所看到的,有一些=F3是charó的等价物,我假设有多个单'='来自=\n

我尝试过以下代码:

echo utf8_encode($texto);

有没有办法将此文本转换为更可读的文本


谢谢

好的,问题解决了。我不得不使用


我在

中找到了解决方案,你到底是如何发送邮件的?问题很可能是您没有设置必要的邮件标题来正确描述邮件内容的编码方式。如果不明确指定内容,不同的邮件客户端会做出不同的默认假设;Mail.app显然做出了与Outlook不同的假设。嗯,与文本类似的邮件是通过Mail.app.Ah发送的,所以反过来说。您没有正确解析邮件标题。有很多不同的电子邮件编码方式,你需要支持它们。您需要解析邮件头以了解邮件是如何编码的,并使用正确的工具对其进行解码。PHP主要在
imap
扩展下提供这些工具。
mb_internal_encoding('UTF-8');
echo str_replace("_"," ", mb_decode_mimeheader($texto));
echo iconv(mb_detect_encoding($texto, mb_detect_order(), true), "UTF-8", $texto);