Das wird vielleicht nicht alle Ihre Fragen beantworten, aber es kann auch nicht schaden, denke ich...
Was auch immer Sie tun möchten, Ich würde nicht mitgehen mail()
Das Versenden von E-Mails ist keine einfache Aufgabe, und die Verwendung einer bestehenden Bibliothek/eines bestehenden Frameworks ist immer eine gute Idee: Es löst viele Probleme, an die Sie wahrscheinlich noch nicht einmal gedacht haben - selbst wenn Sie nicht viele E-Mails versenden müssen.
Zu deinen spezifischen Fragen können dir vielleicht andere Antworten etwas anderes sagen und/oder mehr Informationen liefern, aber jede "gute" Bibliothek, die zum Versenden von Mails entwickelt wurde, sollte mit dieser Art von Problemen umgehen können... Andernfalls sollten Sie wahrscheinlich nach einer anderen Bibliothek suchen ^^
Wenn Sie ein paar dumme Nicht-Adressen testen, können Sie trotzdem 100%ig sicher sein ;-)
Eine andere Lösung, um ganz sicher zu gehen, ist die Überprüfung des Quellcodes der Bibliothek ;-)
Im Quelltext der Version 2.2.1 finden Sie unter anderem diese Angaben:
class.phpmailer.php
Funktion AddAnAddress
, Zeile 413, sehen Sie dies:
if (!self::ValidateAddress($address)) {
$this->SetError($this->Lang('invalid_address').': '. $address);
if ($this->exceptions) {
throw new phpmailerException($this->Lang('invalid_address').': '.$address);
}
echo $this->Lang('invalid_address').': '.$address;
return false;
}
Und es scheint, dass diese Funktion von den anderen Funktionen, die eine Adresse hinzufügen, verwendet wird... Ich nehme also an, es gibt eine Art von E-Mail-Adressen-Validierung ;-)
Das wird zumindest eine deiner Fragen beantworten ^^
PHPMailer ist übrigens nicht die einzige Lösung, die es gibt; es gibt viele andere, wie z.B. :