Html-E-Mail über SMTP via PEAR::Mail und PEAR::Mime versenden

Flattr this
Tweet this: Html-E-Mail über SMTP via PEAR::Mail und PEAR::Mime versenden
Dent this: Html-E-Mail über SMTP via PEAR::Mail und PEAR::Mime versenden
Tags: E-Mail, Mime, PEAR, PHP, SMTP

Beispiel-Code zum versenden einer E-Mail über SMTP mit der Klasse PEAR::Mail PEAR::Mail_Mime und PEAR::Net_SMTP aus dem PHP Extension and Application Repository. Verwendete Versionen: Mail: 1.2.0b1, Mail_Mime: 1.5.2, Net_SMTP 1.3.2, PEAR: 1.7.2

Anmerkung:

Der Code von PEAR ist ursprünglich für PHP 4 geschrieben worden, daher kommt es mit error_reporting(E_ALL | E_STRICT); zu einigen Warnmeldungen betreffs der Strict Standards.

Downloads:

Entweder man nutzt den PEAR-Installer:
pear install pear/Mail pear/Mail_Mime pear/Net_SMTP
Oder man lädt sich die Pakete einzeln herunter:

<?php
$data = array();
$data['smtp'] = array();
$data['smtp']['host'] = 'mail.example.com';
$data['smtp']['port'] = '25';
$data['smtp']['username'] = 'username';
$data['smtp']['password'] = 'password';

$data['from'] = array('name' => 'Absender', 'email' => 'absender@example.com');
$data['to'] = array('name' => 'Empfänger', 'email' => 'empfaenger@example.com');
$data['charset'] = 'utf-8';
$data['subject'] = 'Html Mail';

$data['html'] = '
<html>
    <head>
        <title>'.$data['subject'].'</title>
    </head>
    <body>
        <div>
            <h1>Meine Html-Mail</h1>
            <p>
                Lorem ipsum dolor sit amet.
            </p>
        </div>
    </body>
</html>';

$data['text'] = 'Meine Html-Mail

Lorem ipsum dolor sit amet.';

require_once 'Mail.php';
require_once 'Mail/mime.php';

$options = array( 'auth'     => true,
                  'host'     => $data['smtp']['host'],
                  'port'     => $data['smtp']['port'],
                  'username' => $data['smtp']['username'],
                  'password' => $data['smtp']['password']);

$mailer = Mail::factory('smtp', $options);

$mail = new Mail_Mime(PHP_EOL);
$mail->setHTMLBody($data['html']);                   // Html-Body

$header = $mail->headers();
$header['Subject']      = $data['subject'];         // Betreff setzen
$header['from']         = $data['from']['email'];   // Absender setzen
$header['Content-type'] = 'text/html';
$header['Charset']     = 'UTF-8';

$mailer->send($data['to']['email'], $header, $mail->get());

Trackbacks (0)

Trackbackurl: http://www.robo47.net/trackback/snippet/7

Es sind keine Trackbacks vorhanden.


Kommentare (0)

Es sind noch keine Kommentare vorhanden.

Die Kommentare zu diesem Beitrag sind gesperrt.

You liked it ? Link it on your homepage or blog: