mb_encode_mimeheader
(PHP 4 >= 4.0.6, PHP 5)
mb_encode_mimeheader — Encode string for MIME header
Description
$str
[, string $charset = mb_internal_encoding()
[, string $transfer_encoding = "B"
[, string $linefeed = "\r\n"
[, int $indent = 0
]]]] )
Encodes a given string
str by the MIME header encoding scheme.
Parameters
-
str -
The string being encoded.
-
charset -
charsetspecifies the name of the character set in whichstris represented in. The default value is determined by the current NLS setting (mbstring.language). mb_internal_encoding() should be set to same encoding. -
transfer_encoding -
transfer_encodingspecifies the scheme of MIME encoding. It should be either "B" (Base64) or "Q" (Quoted-Printable). Falls back to "B" if not given. -
linefeed -
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. -
indent -
Indentation of the first line (number of characters in the header before
str).
Return Values
A converted version of the string represented in ASCII.
Examples
Example #1 mb_encode_mimeheader() example
<?php
$name = ""; // kanji
$mbox = "kru";
$doma = "gtinn.mon";
$addr = mb_encode_mimeheader($name, "UTF-7", "Q") . " <" . $mbox . "@" . $doma . ">";
echo $addr;
?>
Notes
Note:
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.