Php/docs/function.mb-encode-mimeheader
来自菜鸟教程
mb_encode_mimeheader
(PHP 4 >= 4.0.6, PHP 5, PHP 7)
mb_encode_mimeheader — 为 MIME 头编码字符串
说明
mb_encode_mimeheader
( string $str
[, string $charset
= determined by mb_language()
[, string $transfer_encoding
= "B"
[, string $linefeed
= "\r\n"
[, int $indent
= 0
]]]] ) : string
按 MIME 头编码方案将指定的字符串 str
进行编码。
参数
str
- 要编码的 string。 它的编码应该和 mb_internal_encoding() 一样。
charset
charset
指定了str
的字符集名。 其默认值由当前的 NLS 设置(mbstring.language
)来确定。transfer_encoding
transfer_encoding
指定了 MIME 的编码方案。 它可以是"B"
(Base64)也可以是"Q"
(Quoted-Printable)。 如果未设置,将回退为"B"
。linefeed
linefeed
指定了 EOL(行尾)标记,使 mb_encode_mimeheader() 执行了一个换行(» RFC 文档中规定,超过长度的一行将换成多行,当前该长度硬式编码为 74 个字符)。 如果没有设定,则回退为"\r\n"
(CRLF)。indent
- 首行缩进(header 里
str
前的字符数目)。
返回值
转换后的字符串版本以 ASCII 形式表达。
范例
Example #1 mb_encode_mimeheader() 例子
<?php$name = ""; // kanji$mbox = "kru";$doma = "gtinn.mon";$addr = mb_encode_mimeheader($name, "UTF-7", "Q") . " <" . $mbox . "@" . $doma . ">";echo $addr;?>
注释
Note:
这个函数没有设计成据更高级上下文的中断点来换行(单词边界等)。 这个特性将导致意外的空格可能会让原始字符串看上去很乱。