phpmarginMit PHP kann man Emailadressen weitgehend auf formale Richtigkeit überprüfen.

Dazu wird in PHP-Programmen häufig die Funktion eregi() benutzt.

Hier ein Beispiel, bei dem die Eigenschaften der eingegebenen Email-Adresse auf

  1. nur alphanumerische Zeichen
  2. nur ein @-Zeichen
  3. mindestens ein Punkt
  4. eine TLD mit 2 bis 4 Zeichen

geprüft werden:

function MailAdrCheck($emailadress) {
if (eregi(“^[a-z0-9]+([-_.]?[a-z0-9])+@[a-z0-9]+([-_.]?[a-z0-9])+.[a-z]{2,4}”, $emailadress)) {
return TRUE;
} else {
return FALSE;
}
}

Im Unterschied zu ereg() unterscheidet eregi() nicht zwischen Groß- und Kleinschreibung, was bei Email-Adressen sinnvoll ist.

Allerdings ist die Funktion seit PHP 5.3.0 veraltet (deprecated), sie sollte also in neuen Projekten nicht mehr verwendet werden. Stattdessen bietet sich die Funktion preg_match() an. Dabei muss nur der Reguläre Ausdruck in RegExp-Delimiter eingefasst werden, ansonsten bleibt alles gleich.