imap_mail_compose

(PHP 4, PHP 5, PHP 7, PHP 8)

imap_mail_composeCrée un message MIME

Description

imap_mail_compose(array$envelope, array$bodies): string|false

Crée un message MIME basé sur l'enveloppe envelope et les sections bodies.

Liste de paramètres

envelope

Un tableau associatif contenant les champs des en-têtes. Les clés valides sont : "remail", "return_path", "date", "from", "reply_to", "in_reply_to", "subject", "to", "cc", "bcc" et "message_id", qui définie les en-têtes respectifs à la chaîne de caractères donnée. Pour définir des en-têtes additionnels, la clé "custom_headers" est supporté, qui attend un tableau de ces en-têtes, par exemple ["User-Agent: My Mail Client"].

bodies

Un tableau indexé des corps. Le premier corps est le corps principal du message ; seulement s'il est du type TYPEMULTIPART, les corps suivant seront traité ; ces corps constitue les corps des parties.

Structure d'un Tableau d'un Corps
CléTypeDescription
typeint Le type MIME. Un de TYPETEXT (par défault), TYPEMULTIPART, TYPEMESSAGE, TYPEAPPLICATION, TYPEAUDIO, TYPEIMAGE, TYPEMODEL ou TYPEOTHER.
encodingint Le Content-Transfer-Encoding. Un de ENC7BIT (par défault), ENC8BIT, ENCBINARY, ENCBASE64, ENCQUOTEDPRINTABLE or ENCOTHER.
charsetstringLe jeu d'encodage du paramètre du type MIME.
type.parametersarray Un tableau associatif de nom de paramètre Content-Type et leur valeurs.
subtypestringLe sous-type MIME, e.g. 'jpeg' pour TYPEIMAGE.
idstringLe Content-ID.
descriptionstringLe Content-Description.
disposition.typestringLe Content-Disposition, e.g. 'attachment'.
dispositionarray Un tableau associatif de nom de paramètre Content-Disposition et leur valeurs.
contents.datastringLa charge utile.
linesintLa taille de la charge utile en lignes.
bytesintLa taille de la charge utile en octets.
md5stringLa checksum MD5 de la charge utile.

Valeurs de retour

Retourne le message MIME en tant que chaîne de caractères, ou false si une erreur survient.

Exemples

Exemple #1 Exemple avec 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));

?>
To Top