使用 imap 读取邮件内容,邮件内容是 GBK 下生成的 base64,邮件内容出现中文的时候使用 base64_decode 解码会乱码。默认是 utf-8 下有什么方式能正确的解码 GBK 下的 base64 或者转成 utf-8 模式
1
cxh116 2020-11-10 18:30:38 +08:00
base64 解码后,再用 mb_convert_encoding 转?
mb_convert_encoding($str, "UTF-8", "GBK"); https://www.php.net/manual/zh/function.mb-convert-encoding.php |
2
qiayue 2020-11-10 18:40:23 +08:00
先 base64_decode,后 gbk 转 utf8
|
3
GM 2020-11-10 18:57:38 +08:00
$base64 = "...";
$decoded_gbk = base64_decode($base64); $decoded_utf8 = mb_convert_encoding($decoded_gbk, 'utf8', 'gbk'); |