V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
k396656156
V2EX  ›  PHP

GBK 生成的 base64 在 utf-8 下如何解码

  •  
  •   k396656156 · 2020-11-10 18:09:09 +08:00 · 2707 次点击
    这是一个创建于 1504 天前的主题,其中的信息可能已经有所发展或是发生改变。

    使用 imap 读取邮件内容,邮件内容是 GBK 下生成的 base64,邮件内容出现中文的时候使用 base64_decode 解码会乱码。默认是 utf-8 下有什么方式能正确的解码 GBK 下的 base64 或者转成 utf-8 模式

    3 条回复    2020-11-10 18:57:38 +08:00
    cxh116
        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
    qiayue
        2
    qiayue  
       2020-11-10 18:40:23 +08:00
    先 base64_decode,后 gbk 转 utf8
    GM
        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');
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1848 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 16:16 · PVG 00:16 · LAX 08:16 · JFK 11:16
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.