Wenn ich Mails mit einem System wie Yii versenden möchte, mache ich das nicht mit der PHP-Mail Funktion. Der Aufwand, der betrieben werden muss, um eine Mail mit der PHP Funktion zu versenden, ohne dass diese ein hohes Spam-Rating bekommt, ist mir zu hoch.
Nun habe ich mich auf die Suche gemacht nach einer Lösung, mit der der Aufwand nicht so hoch ist, eine E-Mail via SMTP zu versenden. Da ich jedoch auf allen Servern eine Authentifizierung vor den SMTP-Dienst geschaltet habe, ist es notwendig sich bei diesem erst zu Authentifizieren. Ich habe im Erweiterungsverzeichnis von Yii die Extension EMailer gefunden. Mit dieser Erweiterung ist ganz einfach E-Mails via SMTP zu versenden. Die Klasse bzw. Erweiterung stellt nichts weiter nach, als einen Yii-Wrapper für PhpMailer. Wer mit PHP schon mal versucht hat, sich mit dem Thema E-Mail versenden auseinanderzusetzen, ist zwangsläufig schon auf den PhpMailer gestossen.
Um die Erweiterung zu installieren, wird einfach die Zip-Datei heruntergeladen und im Verzeichnis /protected/extensions/mailer kopiert. Anschließend müssen noch folgende Einträge in die Konfigurationsdatei geschrieben werden:
1 2 3 4 5 6 7 8 9 10 11 12 13 | $mailer = Yii::app()->mailer; $mailer->CharSet = 'utf-8'; $mailer->IsSMTP(); $mailer->SMTPAuth = true; $mailer->Host = 'smtp.domain.tld'; $mailer->Username = 'user@domain.tld'; $mailer->Password = 'secure'; $mailer->From = 'info@domain.tld; $mailer->FromName = 'Absendername'; $mailer->AddAddress('E-Mail Adresse'); $mailer->Subject = 'Betreff'; $mailer->Body = 'E-Mail Text'; $mailer->Send(); |
So wird mit einem relativ kleinen Code in Yii vernünftig eine E-Mail versendet. Für mich ist der Aufwand, eine Mail via Yii zu versenden, so erheblich geringer, zudem die Spam-Gefahr durch ein Postfach wesentlich geringer ist, wie wenn diese mit der PHP mail() Funktion versendet wird.
Was meint Ihr dazu?