2016-08-04 12 views
-3

Ich weiß, es gibt eine beste Methode, die "PREG MATCH" in PHP Programmiersprache genannt. Ich möchte wissen, gibt es eine andere Methode in PHP für die Validierung? und welches ist das Beste? welche methode übe ich als pro php entwickler aus? Vielen Dank alle :)Was ist die beste/E-Mail-Validierungsmethode in PHP?

+0

Es gibt keine „beste“. Es ist immer situationsbedingt. – Quentin

+0

Die beste Methode, meiner Meinung nach, ist die, die PHP Ihnen intern zur Verfügung stellt. Siehe Beispiel 1 von ['filter_var()'] (http://php.net/filter_var). –

Antwort

0

Wie bereits erwähnt oben im Kommentar, es ist situationsbedingt.

Die meisten PHP-Frameworks haben ihre eigenen Validierungsmethoden für E-Mails und andere Arten von Daten, doch diese Methoden beruhen normalerweise auf regulären Ausdrücken ("PREG MATCH") und führen zusätzliche Prüfungen durch (wenn die Domain einen DNS-Eintrag hat, etc.).

Auch PHP hat eingebaute Funktion filter_var() (http://php.net/manual/en/function.filter-var.php). Es sollte false zurückgeben, wenn die angegebene Zeichenfolge nicht gültige E-Mail-Adresse ist, aber leider ist es nicht immer zuverlässig.

Sie können immer Symfony Prüfungs-Komponente verwenden, ohne Rahmen: https://symfony.com/doc/current/validation.html

+0

ja ich mag diese Antwort. Vielen Dank für diese Information. Ich kenne die "Symfony Validator Komponente" noch nicht. Vielen Dank :) – KabZab

0

Sie können nicht herausfinden, ob eine E-Mail-Adresse gültig ist, indem Sie auf ihr Format schauen. Wenn Sie versuchen, Sie wird einen Fehler machen, der es für bestimmte Leute unmöglich macht, selbst wenn gültige E-Mail-Adressen zu registrieren.

Es ist einfach genug, nach Adressen des Formulars [email protected] zu suchen, aber was ist mit [email protected]? Was ist mit [email protected] oder einer neueren Top-Level-Domain? Für jedes Beispiel kann ich ein ungewöhnliches Adressformat auflisten, es gibt tausend, an die ich gar nicht denke - und Sie auch nicht.

Sie können eine einfache Überprüfung wie "enthält dies eine @ irgendwo drin?" Wenn Sie schnell ausschließen wollen, dass jemand seinen Namen statt ihrer E-Mail-Adresse eintippt, oder grundlegende Fehler in der "falschen Box", aber versuchen Sie nicht zu nicken, ob die ganze Adresse gültig ist.

Wenn Sie wirklich wissen, ob die E-Mail-Adresse gültig ist dort eine ist und nur ein Weg, das zu tun: E-Mail an sie senden, und haben die Eigentümer reagieren (zB durch Klicken auf einen Link)