(PHP 4 >= 4.0.6, PHP 5)
mb_encode_mimeheader — 為 MIME 頭編碼字符串
說(shuō)明
string mb_encode_mimeheader ( string$str
[, string $charset
= mb_internal_encoding()
[, string $transfer_encoding
= "B"
[, string $linefeed
= "rn"
[, int $indent
= 0
]]]] )
按 MIME 頭編碼方案將指定的字符串 str
進(jìn)行編碼。
參數(shù)
str
要編碼的 string。
charset
charset
指定了 str
的字符集名。
其默認(rèn)值由當(dāng)前的 NLS 設(shè)置(mbstring.language)來(lái)確定。
mb_internal_encoding() 應(yīng)當(dāng)設(shè)置為同樣的編碼。
transfer_encoding
transfer_encoding
指定了 MIME 的編碼方案。
它可以是 "B"(Base64)也可以是 "Q"(Quoted-Printable)。
如果未設(shè)置,將回退為 "B"。
linefeed
linefeed
指定了 EOL(行尾)標(biāo)記,使 mb_encode_mimeheader() 執(zhí)行了一個(gè)換行(» RFC 文檔中規(guī)定,超過(guò)長(zhǎng)度的一行將換成多行,當(dāng)前該長(zhǎng)度硬式編碼為 74 個(gè)字符)。
如果沒(méi)有設(shè)定,則回退為 "rn" (CRLF)。
indent
首行縮進(jìn)(header 里 str
前的字符數(shù)目)。
返回值
轉(zhuǎn)換后的字符串版本以 ASCII 形式表達(dá)。
更新日志
版本
說(shuō)明
5.0.0
增加了 indent
參數(shù)。
范例
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:
這個(gè)函數(shù)沒(méi)有設(shè)計(jì)成據(jù)更高級(jí)上下文的中斷點(diǎn)來(lái)?yè)Q行(單詞邊界等)。 這個(gè)特性將導(dǎo)致意外的空格可能會(huì)讓原始字符串看上去很亂。
參見(jiàn)
mb_decode_mimeheader() - 解碼 MIME 頭字段中的字符串