php-doc-en/reference/iconv/functions/iconv-mime-decode-headers.xml
Moriyoshi Koizumi b4d08dab75 - Remove <para> around <example>.
- Replace all <para> within <example> to <simpara>


git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@147242 c90b9560-bf6c-de11-be94-00142212c4b1
2003-12-23 09:56:57 +00:00

150 lines
5 KiB
XML

<?xml version='1.0' encoding='iso-8859-1'?>
<!-- $Revision: 1.4 $ -->
<refentry id="function.iconv-mime-decode-headers">
<refnamediv>
<refname>iconv_mime_decode_headers</refname>
<refpurpose>
Decodes multiple <literal>MIME</literal> header fields at once
</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<methodsynopsis>
<type>array</type><methodname>iconv_mime_decode_headers</methodname>
<methodparam><type>string</type><parameter>encoded_headers</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>mode</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>charset</parameter></methodparam>
</methodsynopsis>
<para>
Returns an associative array that holds a whole set of
<literal>MIME</literal> header fields specified by
<parameter>encoded_headers</parameter> on success, or &false;
if an error occurs during the decoding.
</para>
<para>
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 field name are present,
<function>iconv_mime_decode_headers</function> automatically incorporates
them into an numerically indexed array in the order of occurrence.
</para>
<para>
<parameter>mode</parameter> determines the behaviour in the event
<function>iconv_mime_decode_headers</function> encounters a malformed
<literal>MIME</literal> header field. You can specify any combination
of the following bitmasks.
<table>
<title>Bitmasks acceptable to <function>iconv_mime_decode_headers</function></title>
<tgroup cols="3">
<thead>
<row>
<entry>Value</entry>
<entry>Constant</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<row>
<entry>1</entry>
<entry>ICONV_MIME_DECODE_STRICT</entry>
<entry>
If set, the given header is decoded in full conformance with the
standards defined in <ulink url="&url.rfc;2047">RFC2047</ulink>.
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 <literal>MIME</literal> headers.
</entry>
</row>
<row>
<entry>2</entry>
<entry>ICONV_MIME_DECODE_CONTINUE_ON_ERROR</entry>
<entry>
If set, <function>iconv_mime_decode_headers</function>
attempts to continue to process the given header even though
an error occurs.
</entry>
</row>
</tbody>
</tgroup>
</table>
</para>
<para>
The optional <parameter>charset</parameter> parameter specifies the
character set to represent the result by. If omitted,
<link linkend="iconv.configuration">iconv.internal_charset</link>
will be used.
</para>
<example>
<title><function>iconv_mime_decode_function</function> example</title>
<programlisting role="php">
&lt;?php
$headers_string = &lt;&lt;&lt;EOF
Subject: =?UTF-8?B?UHLDvGZ1bmcgUHLDvGZ1bmc=?=
To: example@example.com
Date: Thu, 1 Jan 1970 00:00:00 +0000
Message-Id: &lt;example@example.com&gt;
Received: from localhost (localhost [127.0.0.1]) by localhost
with SMTP id example for &lt;example@example.com&gt;
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);
?&gt;
</programlisting>
<simpara>
The output of this script should look like:
</simpara>
<screen>
Array
(
[Subject] =&gt; Pr&uuml;fung Pr&uuml;fung
[To] =&gt; example@example.com
[Date] =&gt; Thu, 1 Jan 1970 00:00:00 +0000
[Message-Id] =&gt; &lt;example@example.com&gt;
[Received] =&gt; Array
(
[0] =&gt; from localhost (localhost [127.0.0.1]) by localhost with SMTP id example for &lt;example@example.com&gt;; Thu, 1 Jan 1970 00:00:00 +0000 (UTC) (envelope-from example-return-0000-example=example.com@example.com)
[1] =&gt; (qmail 0 invoked by uid 65534); 1 Thu 2003 00:00:00 +0000
)
)
</screen>
</example>
<para>
See also <function>iconv_mime_decode</function>,
<function>imap_base64_decode</function>,
and <function>imap_qprint</function>.
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"../../../../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->