(PHP 4, PHP 5, PHP 7, PHP 8)
imap_mail_compose — Erzeugt eine MIME-Nachricht aus Kopf- und Nachrichtenelementen
Erzeugt eine MIME-konforme Nachricht aus den in envelope
gegebenen Kopfelementen und den Nachrichtenteilen aus bodies
.
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.
Schlüssel | Typ | Beschreibung |
---|---|---|
type | int | Der MIME-Typ. Entweder TYPETEXT (Standard), TYPEMULTIPART , TYPEMESSAGE , TYPEAPPLICATION , TYPEAUDIO , TYPEIMAGE , TYPEMODEL oder TYPEOTHER . |
encoding | int | Das Content-Transfer-Encoding . Entweder ENC7BIT (Standard), ENC8BIT , ENCBINARY , ENCBASE64 , ENCQUOTEDPRINTABLE oder ENCOTHER . |
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ür TYPEIMAGE . |
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. |
Gibt eine MIME-konforme Nachricht als String zurück. Bei einem Fehler wird false
zurückgegeben.
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));
?>