(PHP 4 >= 4.0.6, PHP 5)
mb_encode_mimeheader — Encode string for MIME header
$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.
str
The string being encoded.
charset
charset
specifies the name of the character set
in which str
is 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_encoding
specifies the scheme of MIME
encoding. It should be either "B" (Base64) or
"Q" (Quoted-Printable). Falls back to
"B" if not given.
linefeed
linefeed
specifies 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
).
A converted version of the string represented in ASCII.
Version | Description |
---|---|
5.0.0 |
The indent parameter was added.
|
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;
?>
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.