Description
array 
iconv_mime_decode_headers ( string encoded_headers [, int mode [, string charset]])
     Returns an associative array that holds a whole set of
     MIME header fields specified by
     encoded_headers on success, or FALSE
     if an error occurs during the decoding.
    
     Each key of the return value represents an individual
     field name and the corresponding element represents a field value.
     If more than one field of the same name are present,
     iconv_mime_decode_headers() automatically incorporates
     them into a numerically indexed array in the order of occurrence.
    
     mode determines the behaviour in the event 
     iconv_mime_decode_headers() encounters a malformed
     MIME header field. You can specify any combination
     of the following bitmasks.
     
表格 1. Bitmasks acceptable to iconv_mime_decode_headers()
| Value | Constant | Description | 
|---|
| 1 | ICONV_MIME_DECODE_STRICT | If set, the given header is decoded in full conformance with the
          standards defined in RFC2047.
          This option is disabled by default because there are a lot of
          broken mail user agents that don't follow the specification and don't
          produce correct MIME headers. | 
| 2 | ICONV_MIME_DECODE_CONTINUE_ON_ERROR | If set, iconv_mime_decode_headers()
          attempts to ignore any grammatical errors and continue to process
          a given header. | 
     The optional charset parameter specifies the
     character set to represent the result by. If omitted, 
     iconv.internal_charset
     will be used.
    
| 例子 1. iconv_mime_decode_headers() example | 
<?php$headers_string = <<<EOF
 Subject: =?UTF-8?B?UHLDvGZ1bmcgUHLDvGZ1bmc=?=
 To: example@example.com
 Date: Thu, 1 Jan 1970 00:00:00 +0000
 Message-Id: <example@example.com>
 Received: from localhost (localhost [127.0.0.1]) by localhost
 with SMTP id example for <example@example.com>
 Thu, 1 Jan 1970 00:00:00 +0000 (UTC)
 (envelope-from example-return-0000-example=example.com@example.com)
 Received: (qmail 0 invoked by uid 65534); 1 Thu 2003 00:00:00 +0000
 
 EOF;
 
 $headers =  iconv_mime_decode_headers($headers_string, 0, "ISO-8859-1");
 print_r($headers);
 ?>
 | 
 
       The output of this script should look like:
       | Array
(
    [Subject] => Prüfung Prüfung
    [To] => example@example.com
    [Date] => Thu, 1 Jan 1970 00:00:00 +0000
    [Message-Id] => <example@example.com>
    [Received] => Array
        (
            [0] => from localhost (localhost [127.0.0.1]) by localhost with SMTP id example for <example@example.com>; Thu, 1 Jan 1970 00:00:00 +0000 (UTC) (envelope-from example-return-0000-example=example.com@example.com)
            [1] => (qmail 0 invoked by uid 65534); 1 Thu 2003 00:00:00 +0000
        )
) | 
 | 
     See also iconv_mime_decode(),
     mb_decode_mimeheader(),
     imap_mime_header_decode(),
     imap_base64()
     and imap_qprint().