首先,我已阅读
HTML encoding issues - "Â" character showing up instead of " "
让我解释一下我的脚本
我有一个cronjob,它使用php-imap-client运行php脚本来从收件箱中检索电子邮件。在此脚本的顶部,我设置了header('Content-Type: text/html; charset=utf-8');
即使我已将编码设置为UTF-8,我仍然看到 
被编码为Â
最终,消息正文被插入到MySQL中,并且我可以看到Â
记录,因此我知道它是在MySQL之前发生的。我仔细检查了一下,并将MySQL也设置为UTF-8。
我还设置了用$message = utf8_encode($message)
检索时的消息正文,但这没用
即使使用cronjob执行,是否也可以在php脚本上设置编码?
这是我使用php-imap-client检索邮件正文的方式
$message = $email->message->html.PHP_EOL;
$doc->loadHTML($message);
$message = $doc->saveHtml();
我只是不确定编码在什么时候搞砸了。