我正在使用脚本处理电子邮件。
在处理编码的主题时,我遇到了一个奇怪的问题。
这是我的测试源代码:
<?php
$original='=?UTF-8?B?UHJvYsOzIE3DoXMgVmVjZXM=?=';
$decoded = mb_decode_mimeheader($original);
$obj = new SimpleXMLElement('<' . '?' . 'xml version="1.0" standalone="yes" ?' .'><request></request>');
$obj->addChild('subject', $decoded);
print_r($obj);
print "<br><br>";
print $obj->asXML();
?>
这是它产生的输出(输出源代码):
SimpleXMLElement Object
(
[subject] => Probó Más Veces
)
<br><br><?xml version="1.0" standalone="yes"?>
<request><subject>Prob󠍡s Veces</subject></request>
正如您所看到的,在SimpleXML对象中,主题是正确的“ProbóMásVeces”,但在asXML输出中,它已被转换为:Prob?sVeces。
为什么会出现这样的问题以及如何解决这个问题?
谢谢!