Meine Herren!
Ich möchte meine Seite mit einem Kontaktformular erweitern, einige haben mir von der PHP Mail Funktion abgeraten … und warum nicht die PHP Mail Funktion?
Warum hast du das nicht gleich bei den Kritikern erfragt? ;)
Hier ist meine Sicht auf die Dinge:
PHPs eigene mail-Funktion ist sehr spartanisch. Sehen wir uns mal die Signatur an:
bool mail ( string $to , string $subject , string $message [, string $additional_headers [, string $additional_parameters ]] )
Aha: Empfänger ($to), Betreff ($subject) und Mail-Text ($message) können wir direkt angeben. Das ist schon mal gut, nicht so offensichtlich ist, wie wir die Absender-Adresse oder weitere Empfänger angeben könnten. Diese Informationen würden wir als $additional_headers übergeben. Der Wert dieser Variablen unterliegt strengen Syntax-Regeln und PHP leistet uns keinerlei Hilfestellung dabei, diese einzuhalten. Um die Absender-Adresse anzugeben könnten wir zum Beispiel folgenden Code benutzen:
$additional_headers = 'From: webmaster@example.com\r\n';
für einen weiteren Empfänger:
$additional_headers .= 'Cc: uwe@example.com' . "\r\n";
Noch ist das alles nicht so kompliziert, aber wenn es dann plötzlich darum geht mal eine HTML-Mail statt einer reinen Text-Mail zu verschicken, wenn noch andere versteckte Adressaten hinzukommen oder wenn Anhänge mitgeschickt werden müssen, dann wird es sehr unübersichtlich, wenn wir nach diesem Schema fortfahren müssen.
Deshalb gibt es eine Reihe Bibliotheken, die versuchen dieses Verhalten zu kapseln und mit einer ausdrucksstarken API zugänglicher zu machen.
“All right, then, I'll go to hell.” – Huck Finn