imap_mail_compose
(PHP 4, PHP 5, PHP 7, PHP 8)
imap_mail_compose — Erzeugt eine MIME-Nachricht aus Kopf- und Nachrichtenelementen
Beschreibung
$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üssel Typ Beschreibung type
int Der MIME-Typ. Entweder TYPETEXT
(Standard),TYPEMULTIPART
,TYPEMESSAGE
,TYPEAPPLICATION
,TYPEAUDIO
,TYPEIMAGE
,TYPEMODEL
oderTYPEOTHER
.encoding
int Das Content-Transfer-Encoding
. EntwederENC7BIT
(Standard),ENC8BIT
,ENCBINARY
,ENCBASE64
,ENCQUOTEDPRINTABLE
oderENCOTHER
.charset
string Der Zeichensatz-Parameter des MIME-Typs. type.parameters
array Ein assoziatives Array von Content-Type
-Parameternamen und deren Werten.subtype
string Der MIME-Subtyp, z.B. 'jpeg'
fürTYPEIMAGE
.id
string Die Content-ID
.description
string Die Content-Description
.disposition.type
string Die Content-Disposition
, z.B.'attachment'
.disposition
array Ein assoziatives Array von Content-Disposition
-Parameternamen und deren Werten.contents.data
string Der Inhalt. lines
int Die Größe des Inhalts in Zeilen. bytes
int Die Größe des Inhalts in Bytes. md5
string Die 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));
?>