如何在我的utf-8编码页面上正确显示utf编码字符?

时间:2010-05-27 07:26:10

标签: php zend-framework utf-8 character-encoding

大家好我正在检索电子邮件,我的一些电子邮件有utf编码文本。然而,即使我的页面编码为utf 8 - 在某些地方,当我尝试输出utf文本时,我会得到有趣的字符,如:

=?utf-8?B?Rlc6INqp24zYpyDYotm+INin2LMg2YXYs9qp2LHYp9uB2bkg2qnbjCDZhtmC?= 
=?utf-8?B?2YQg2qnYsdiz2qnYqtuSINuB24zaug==?=

而在同一页面的其他区域,它显示正常。是怎么回事?

2 个答案:

答案 0 :(得分:6)

这不是“有趣的人物”,那些是合法的ASCII字符。只是字符串是MIME编码的传输,所以你需要通过mb_decode_mimeheader

答案 1 :(得分:1)

您可能会看到未解码的电子邮件标头:=?是起始分隔符,utf-8表示文本为utf-8,B表示base-64编码。 ?=是结束分隔符。所以,base64_decode()是问号之间的部分,你会得到内容。