imap_mail_compose

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

imap_mail_composeErzeugt eine MIME-Nachricht aus Kopf- und Nachrichtenelementen

Beschreibung

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

Erzeugt eine MIME-konforme Nachricht aus den in envelope gegebenen Kopfelementen und den Nachrichtenteilen aus bodies.

Parameter-Liste

envelope

Ein assoziatives Array von Kopfzeilenfeldern. Gültige Schlüssel sind: "remail", "return_path", "date", "from", "reply_to", "in_reply_to", "subject", "to", "cc", "bcc" und "message_id", die die jeweiligen Kopfzeilen zum angegebenen String definieren. Um zusätzliche Kopfzeilen zu definieren, kann der Schlüssel "custom_headers" verwendet werden, der ein Array von anderen Kopfzeilen erwartet, z. B. ["User-Agent: Mein Mail-Client"]).

bodies

Ein Array mit dem Textkörper. Das erste Element des Arrays ist der zentrale Teil der Nachricht. Nur wenn er vom Typ TYPEMULTIPART ist, werden die weiteren Elemente verarbeitet. Die verarbeiteten Elemente bilden die Teile des Körpers.

Der Aufbau des Körper-Arrays
SchlüsselTypBeschreibung
typeint Der MIME-Typ. Entweder TYPETEXT (Standard), TYPEMULTIPART, TYPEMESSAGE, TYPEAPPLICATION, TYPEAUDIO, TYPEIMAGE, TYPEMODEL oder TYPEOTHER.
encodingint Das Content-Transfer-Encoding. Entweder ENC7BIT (Standard), ENC8BIT, ENCBINARY, ENCBASE64, ENCQUOTEDPRINTABLE oder ENCOTHER.
charsetstringDer Zeichensatz-Parameter des MIME-Typs.
type.parametersarray Ein assoziatives Array von Content-Type-Parameternamen und deren Werten.
subtypestring Der MIME-Subtyp, z. B. 'jpeg' für TYPEIMAGE.
idstringDie Content-ID.
descriptionstringDie Content-Description.
disposition.typestring Die Content-Disposition, z. B. 'attachment'.
dispositionarray Ein assoziatives Array von Content-Disposition-Parameternamen und deren Werten.
contents.datastringDer Inhalt.
linesintDie Größe des Inhalts in Zeilen.
bytesintDie Größe des Inhalts in Bytes.
md5stringDie MD5-Prüfsumme des Inhalts.

Rückgabewerte

Gibt eine MIME-konforme Nachricht als String zurück. Bei einem Fehler wird false zurückgegeben.

Beispiele

Beispiel #1 imap_mail_compose()-Beispiel

<?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