=?ISO-8859-1 in mail subject

匿名 (未验证) 提交于 2019-12-03 03:03:02

问题:

I'm acquiring the unread mails I have in my GMail account through PHP and its method imap_open

When I get the subjects through the method imap_fetch_overview I get some subjects like this:

=?ISO-8859-1?Q?Informaci=F3n_Apartamento_a_la_Venta?= =?ISO-8859-1?Q?_en_Benasque(Demandas:_0442_______)?= 

It's unreadable, I think because of its character encoding.

What should I do to make it readable?

回答1:

To get the string in UTF-8, do:

$or = '=?ISO-8859-1?Q?Informaci=F3n_Apartamento_a_la_Venta?= =?ISO-8859-1?Q?_en_Benasque(Demandas:_0442_______)?='; mb_internal_encoding('UTF-8'); $v = str_replace("_"," ", mb_decode_mimeheader($or)); 

which gives:

 Información Apartamento a la Venta en Benasque(Demandas: 0442       ) 

You can then convert to ISO-8859-1, if you wish.



回答2:

$or = '=?ISO-8859-1?Q?Informaci=F3n_Apartamento_a_la_Venta?= =?ISO-8859-1?Q?_en_Benasque(Demandas:_0442_______)?='; mb_internal_encoding('UTF-8'); $v = str_replace("_"," ", mb_decode_mimeheader($or)); 

it works for me (thanks artefacto)



标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!