Files
php-doc-ru/reference/imap/functions/imap-mail-compose.xml

214 lines
8.3 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: e2f50c240bebc502a3d990d73633a6141f3bd9fd Maintainer: rjhdby Status: ready -->
<!-- Reviewed: yes Maintainer: lex -->
<refentry xml:id="function.imap-mail-compose" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>imap_mail_compose</refname>
<refpurpose>Создать MIME-сообщение на основе заданных обёртки и тела</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type class="union"><type>string</type><type>false</type></type><methodname>imap_mail_compose</methodname>
<methodparam><type>array</type><parameter>envelope</parameter></methodparam>
<methodparam><type>array</type><parameter>bodies</parameter></methodparam>
</methodsynopsis>
<para>
Создаёт MIME-сообщение на основе обёртки <parameter>envelope</parameter>
и тела <parameter>bodies</parameter>.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>envelope</parameter></term>
<listitem>
<para>
Ассоциативный массив с полями заголовка. Допустимые ключи:
<literal>"remail"</literal>, <literal>"return_path"</literal>, <literal>"date"</literal>, <literal>"from"</literal>, <literal>"reply_to"</literal>, <literal>"in_reply_to"</literal>, <literal>"subject"</literal>,
<literal>"to"</literal>, <literal>"cc"</literal>, <literal>"bcc"</literal> и <literal>"message_id"</literal>, которые устанавливают соответствующие заголовки сообщений в заданную строку (&string;).
Для установки дополнительных заголовков поддерживается ключ <literal>"custom_headers"</literal>, который содержит
ассоциативный массив прочих заголовков, например, <code>["User-Agent: My Mail Client"]</code>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>bodies</parameter></term>
<listitem>
<para>
Индексированный массив тел. Первое тело - это основная часть сообщения;
дальнейшие тела обрабатываются, только если оно
с типом <constant>TYPEMULTIPART</constant>; эти тела составляют тела частей.
</para>
<para>
<table>
<title>Структура массива тела</title>
<tgroup cols="2">
<thead>
<row>
<entry>Ключ</entry>
<entry>Тип</entry>
<entry>Описание</entry>
</row>
</thead>
<tbody>
<row>
<entry><literal>type</literal></entry>
<entry><type>int</type></entry>
<entry>
Тип MIME.
Один из <constant>TYPETEXT</constant> (по умолчанию), <constant>TYPEMULTIPART</constant>,
<constant>TYPEMESSAGE</constant>, <constant>TYPEAPPLICATION</constant>,
<constant>TYPEAUDIO</constant>, <constant>TYPEIMAGE</constant>,
<constant>TYPEMODEL</constant> или <constant>TYPEOTHER</constant>.
</entry>
</row>
<row>
<entry><literal>encoding</literal></entry>
<entry><type>int</type></entry>
<entry>
Значение <literal>Content-Transfer-Encoding</literal>.
Одно из <constant>ENC7BIT</constant> (default), <constant>ENC8BIT</constant>,
<constant>ENCBINARY</constant>, <constant>ENCBASE64</constant>,
<constant>ENCQUOTEDPRINTABLE</constant> или <constant>ENCOTHER</constant>.
</entry>
</row>
<row>
<entry><literal>charset</literal></entry>
<entry><type>string</type></entry>
<entry>Параметр charset типа MIME.</entry>
</row>
<row>
<entry><literal>type.parameters</literal></entry>
<entry><type>array</type></entry>
<entry>Ассоциативный массив (&array;) имён параметров <literal>Content-Type</literal> и их значений.</entry>
</row>
<row>
<entry><literal>subtype</literal></entry>
<entry><type>string</type></entry>
<entry>Подтип MIME, например, <literal>'jpeg'</literal> для <constant>TYPEIMAGE</constant>.</entry>
</row>
<row>
<entry><literal>id</literal></entry>
<entry><type>string</type></entry>
<entry>Значение <literal>Content-ID</literal>.</entry>
</row>
<row>
<entry><literal>description</literal></entry>
<entry><type>string</type></entry>
<entry>Значение <literal>Content-Description</literal>.</entry>
</row>
<row>
<entry><literal>disposition.type</literal></entry>
<entry><type>string</type></entry>
<entry>Значение <literal>Content-Disposition</literal>, например, <literal>'attachment'</literal>.</entry>
</row>
<row>
<entry><literal>disposition</literal></entry>
<entry><type>array</type></entry>
<entry>Ассоциативный массив (&array;) имён параметров <literal>Content-Disposition</literal> и их значений.</entry>
</row>
<row>
<entry><literal>contents.data</literal></entry>
<entry><type>string</type></entry>
<entry>Полезная нагрузка.</entry>
</row>
<row>
<entry><literal>lines</literal></entry>
<entry><type>int</type></entry>
<entry>Размер полезной нагрузки в строках.</entry>
</row>
<row>
<entry><literal>bytes</literal></entry>
<entry><type>int</type></entry>
<entry>Размер полезной нагрузки в байтах.</entry>
</row>
<row>
<entry><literal>md5</literal></entry>
<entry><type>string</type></entry>
<entry>Контрольная сумма MD5 полезной нагрузки.</entry>
</row>
</tbody>
</tgroup>
</table>
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Возвращает MIME-сообщение в виде строки (&string;), &return.falseforfailure;.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Пример использования <function>imap_mail_compose</function></title>
<programlisting role="php">
<![CDATA[
<?php
$envelope["from"]= "joe@example.com";
$envelope["to"] = "foo@example.com";
$envelope["cc"] = "bar@example.com";
$part1["type"] = TYPEMULTIPART;
$part1["subtype"] = "mixed";
$filename = "/tmp/imap.c.gz";
$fp = fopen($filename, "r");
$contents = fread($fp, filesize($filename));
fclose($fp);
$part2["type"] = TYPEAPPLICATION;
$part2["encoding"] = ENCBINARY;
$part2["subtype"] = "octet-stream";
$part2["description"] = basename($filename);
$part2["contents.data"] = $contents;
$part3["type"] = TYPETEXT;
$part3["subtype"] = "plain";
$part3["description"] = "description3";
$part3["contents.data"] = "contents.data3\n\n\n\t";
$body[1] = $part1;
$body[2] = $part2;
$body[3] = $part3;
echo nl2br(imap_mail_compose($envelope, $body));
?>
]]>
</programlisting>
</example>
</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:"~/.phpdoc/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
-->