imap_mail_compose
(PHP 4, PHP 5, PHP 7)
imap_mail_compose — Создать MIME-сообщение на основе заданных обертки и тела
Описание
$envelope
, array $body
) : string|false
Создает MIME-сообщение на основе обертки envelope
и тела body
.
Список параметров
-
envelope
-
Ассоциативный массив с полями заголовка. Допустимые ключи:
"remail"
,"return_path"
,"date"
,"from"
,"reply_to"
,"in_reply_to"
,"subject"
,"to"
,"cc"
,"bcc"
и"message_id"
, которые устанавливают соответствующие заголовки сообщений в заданную строку (string). Для установки дополнительных заголовков поддерживается ключ"custom_headers"
, который содержит ассоциативный массив прочих заголовков, например,["User-Agent: My Mail Client"]
. -
body
-
Индексированный массив тел. Первое тело - это основная часть сообщения; дальнейшие тела обрабатываются, только если оно с типом
TYPEMULTIPART
; эти тела составляют тела частей.Структура массива тела Ключ Тип Описаниее type
int Тип MIME. Один из TYPETEXT
(по умолчанию),TYPEMULTIPART
,TYPEMESSAGE
,TYPEAPPLICATION
,TYPEAUDIO
,TYPEIMAGE
,TYPEMODEL
илиTYPEOTHER
.encoding
int Значение Content-Transfer-Encoding
. Одно изENC7BIT
(default),ENC8BIT
,ENCBINARY
,ENCBASE64
,ENCQUOTEDPRINTABLE
илиENCOTHER
.charset
string Параметр charset типа MIME. type.parameters
array Ассоциативный массив (array) имен параметров Content-Type
и их значений.subtype
string Подтип MIME, например, 'jpeg'
дляTYPEIMAGE
.id
string Значение Content-ID
.description
string Значение Content-Description
.disposition.type
string Значение Content-Disposition
, например,'attachment'
.disposition
array Ассоциативный массив (array) имен параметров Content-Disposition
и их значений.contents.data
string Полезная нагрузка. lines
int Размер полезной нагрузки в строках. bytes
int Размер полезной нагрузки в байтах. md5
string Контрольная сумма MD5 полезной нагрузки.
Возвращаемые значения
Возвращает MIME-сообщение в виде строки (string), или false
в случае возникновения ошибки.
Примеры
Пример #1 Пример использования imap_mail_compose()
<?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));
?>