Summary: Encode string for MIME header
PHP 5Related methods: mb_decode_mimeheader
string mb_encode_mimeheader(string $str[, string $charset = determined by mb_language(), string $transfer_encoding = "B", string $linefeed = "\\r\\n", int $indent = 0])
Encodes a given string
str by the MIME header encoding scheme.
A converted version of the string represented in ASCII.
- string $str: The string being encoded. Its encoding should be same as mb_internal_encoding().
- string $charset [ = determined by mb_language()]:
charsetspecifies the name of the character set in which
stris represented in. The default value is determined by the current NLS setting (mbstring.language).
- string $transfer_encoding [ = "B"]:
transfer_encodingspecifies the scheme of MIME encoding. It should be either "B" (Base64) or "Q" (Quoted-Printable). Falls back to "B" if not given.
- string $linefeed [ = "\\r\\n"]:
linefeedspecifies the EOL (end-of-line) marker with which mb_encode_mimeheader() performs line-folding (a » RFC term, the act of breaking a line longer than a certain length into multiple lines. The length is currently hard-coded to 74 characters). Falls back to "\r\n" (CRLF) if not given.
- int $indent [ = 0]: Indentation of the first line (number of characters in the header before
Example #1 mb_encode_mimeheader() example
$name = ""; // kanji
$mbox = "kru";
$doma = "gtinn.mon";
$addr = mb_encode_mimeheader($name, "UTF-7", "Q") . " <" . $mbox . "@" . $doma . ">";
- This function isn't designed to break lines at higher-level contextual break points (word boundaries, etc.). This behaviour may clutter up the original string with unexpected spaces.