Tach,
ich habe grade zur E-Mail-Adressvaldierung (zumindest syntaktisch) die Funktion filter_var() entdeckt (funktioniert ab PHP 5.2).
if (!(filter_var('random@example.com', FILTER_VALIDATE_EMAIL))) {
echo 'E-Mail-Adresse ist falsch';
}
Im Vergleich zu den sonst hier geposteten RegEx-Monstern ist das mal eine wirklich einfache Lösung. Leider finde ich auf php.net keine Liste mit Beschreibung aller möglichen Filter - lediglich filter_list() soll eine Auflistung der verfügbaren Filter liefern.
Ich würde gerne wissen, ob die Funktion nur die Gültigkeit der Mail-Adresse gemäß RFC 2821/2822 prüft oder aber auch beachtet, dass es Einschränkungen durch das SMTP gibt.
Im Artikel Validierung von eMail-Adressen steht zu dieser Funktion übrigens nichts (eh klar, Artikel zu alt).
Ggf. benötigt den Spaß der ein oder andere - die Frage taucht ja immer mal wieder hier im Forum auf, eine zufriedenstellende Antwort gibts aber meistens nicht - es wird halt immer gerne gestritten, welcher reguläre Ausdruck nun der am wenigsten fehlerhafte ist :).