(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.
  
strThe 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.
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.