Heim  >  Artikel  >  Backend-Entwicklung  >  E-Mails mit PHP versenden: So passen Sie Antwort-Header und Anhänge an

E-Mails mit PHP versenden: So passen Sie Antwort-Header und Anhänge an

angryTom
angryTomnach vorne
2019-10-15 15:09:412838Durchsuche

E-Mails mit PHP versenden: So passen Sie Antwort-Header und Anhänge an

Obwohl es vorgefertigte Klassenbibliotheken (wie PEAR) gibt, die problemlos Anhänge hinzufügen und senden können, ist dies für einige kleine Websites (die Serverhardware und die Website-Größe sind nicht ideal) der Fall ist für die Installation von PEAR erforderlich. Dies kann zu unnötiger Belastung führen und die Effizienz des WEB-Programmbetriebs verringern.

Wenn wir das E-Mail-Format verstehen, können wir ein Skript zum Senden von Anhängen schreiben. Der Code ist nicht lang:

[php]

function mailSend($to, $subject, $message, $attach, $from, $replyto) {
//定义边界线
$boundary = uniqid();
//生成邮件头
$header = "From: $from
Reply-to:$replyto
Content-type: multipart/mixed; boundary=\"$boundary\"";
//获取附件文件的MIME类型
$mimeType = mime_content_type($attach);
//对附件文件进行编码和切分
$fp = fopen($attach, "r");
if ($fp) {
$content = fread($fp, filesize($attach));
$content = chunk_split(base64_encode($content));
fclose($fp);
}
else {
die("Failed to open file…");
}
//生成邮件主体
$body = "
–$boundary
Content-type: text/plain; charset=utf-8;
Content-transfer-encoding: 8bit
$message
–$boundary
Content-Type: $mimeType; name=$attach
Content-Disposition: attachment; filename=$attach
Content-Transfer-Encoding: base64
$content
–$boundary–";
//发送邮件
mail($to, $subject, $body, $header) or die("Failed to send mail…");
}

[/php]

Für mehr PHP-bezogenes Wissen, Bitte besuchen Sie die PHP-Chinese-Website!

Das obige ist der detaillierte Inhalt vonE-Mails mit PHP versenden: So passen Sie Antwort-Header und Anhänge an. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:cnblogs.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen