PHP 日本大会 2024

mb_decode_mimeheader

(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)

mb_decode_mimeheader解码 MIME 头字段中的字符串

描述

mb_decode_mimeheader(string $string): string

解码 MIME 头中的编码字 string string

参数

string

被解码的 string

返回值

以内部字符编码解码后的 string

变更日志

版本 描述
8.3.0 根据 » RFC 2047 的规定,下划线将转换为空格。

参见

添加注释

用户贡献注释 4 条注释

tomlove at gmail dot com
14 年前
此函数忽略 mbstring 扩展不支持的字符集(例如阿拉伯语 windows-1256)中指定的任何编码字。此类编码字将直接通过。

RFC2047 未指定行为,但 Gmail、Windows Mail 等常用代理程序不会忽略此类编码字。它们被解码,就好像它们被声明为本地字符集一样。

请注意这种特性。
Brett
12 年前
另请参见以下函数,在某些情况下它们可能更有效
iconv_mime_decode() - https://php.net/manual/function.iconv-mime-decode.php
imap_utf8() - https://php.net/manual/function.imap-utf8.php
hgs at cs dot columbia dot edu
3 年前
在 Q 编码模式下,RFC 2047 将空格编码为 _(第 4.2 节)。

mb_decode_mimeheader()

似乎没有这样做。因此,为了避免名称或主题带有下划线,需要对输入字符串应用 strtr() 或类似函数。

另一方面,小写字符串现在可以正常工作。
Frogger2000 at gmx dot de
22 年前
使用 quoted-printable-encoding,十六进制数字必须用大写字母编写!

有效:=?iso-8859-1?q?=3F=3F=3F?=
无效:=?iso-8859-1?q?=3f=3f=3f?=
To Top