Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich E-Mail-Adressen in PHP zuverlässig validieren?

Wie kann ich E-Mail-Adressen in PHP zuverlässig validieren?

Linda Hamilton
Linda HamiltonOriginal
2024-12-27 06:56:08438Durchsuche

How Can I Reliably Validate Email Addresses in PHP?

Validierung von E-Mail-Adressen in PHP

Die Validierung von E-Mail-Adressen ist eine entscheidende Aufgabe in der Webentwicklung. Obwohl es verlockend ist, für diese Aufgabe reguläre Ausdrücke zu verwenden, ist es wichtig, die Einschränkungen zu verstehen und alternative Ansätze in Betracht zu ziehen.

Reguläre Ausdrücke: Eine fehlerhafte Lösung

Die bereitgestellte Funktion verwendet einen regulären Ausdruck, um E-Mails zu validieren Adressen. Allerdings ist das Schreiben einer Regex, die zuverlässig sowohl gültige als auch ungültige E-Mail-Adressen abfängt, aufgrund der Komplexität der RFC-Spezifikationen für E-Mail-Adressen eine große Herausforderung.

Stattdessen bietet PHP sicherere und robustere integrierte Funktionen für die E-Mail-Validierung:

if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
    // invalid email address
}

Über Regex hinaus: Zusätzliche Validierungsprüfungen

Während filter_var() effektiv nach prüft Wohlgeformte E-Mail-Adressen sind keine Garantie für deren Existenz. Um sicherzustellen, dass die angegebene Domain vorhanden ist, sollten Sie die Suche nach einem MX-Eintrag in Betracht ziehen:

if (!checkdnsrr($domain, 'MX')) {
    // domain is not valid
}

Der ultimative Test: Bestätigungs-E-Mail

Die definitive Methode zur Validierung einer E-Mail-Adresse ist das Senden einer Bestätigungs-E-Mail. Dieser Ansatz stellt sicher, dass die Adresse echt und für den Empfänger zugänglich ist.

Fazit

Die E-Mail-Adressvalidierung ist eine komplexe Aufgabe. Obwohl reguläre Ausdrücke nützlich sein können, weisen sie Einschränkungen auf. Der empfohlene Ansatz in PHP besteht darin, filter_var() für die anfängliche Validierung zu verwenden und zusätzliche Prüfungen auf Domänenexistenz in Betracht zu ziehen. Um jedoch absolut sicher zu sein, bleibt das Versenden einer Bestätigungs-E-Mail die zuverlässigste Methode.

Das obige ist der detaillierte Inhalt vonWie kann ich E-Mail-Adressen in PHP zuverlässig validieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn