Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich E-Mail-Adressen in PHP überprüfen, ohne E-Mails zu senden?
E-Mail-Adressen überprüfen, ohne E-Mails zu senden
Mit dem Aufkommen von Spam-Filterung und E-Mail-Listenüberprüfung benötigen Entwickler häufig eine Möglichkeit, E-Mail-Adressen zu validieren ohne E-Mails zu versenden. PHP bietet eine Lösung mit SMTP.
SMTP-Verifizierung
SMTP (Simple Mail Transfer Protocol) wird zum Senden von E-Mails verwendet. Die Unterstützung von PHP für SMTP ermöglicht die E-Mail-Verifizierung auf zwei Arten:
1. VRFY-Befehl:
Der VRFY-Befehl fragt einen Server ab, um zu bestätigen, ob ein E-Mail-Empfänger vorhanden ist. Wenn der Server mit einem 2.0.0 DSN (Delivery Status Notification) antwortet, ist die E-Mail-Adresse gültig.
Beispiel:
$socket = fsockopen('server', 25); fwrite($socket, "VRFY user\r\n"); $response = fgets($socket);
2. RCPT TO-Befehl:
Der RCPT TO-Befehl versucht, eine E-Mail zu senden. Wenn der Empfänger nicht existiert, antwortet der Server mit einem 5.1.1 DSN.
Beispiel:
$socket = fsockopen('server', 25); fwrite($socket, "MAIL FROM:<sender>\r\n"); fwrite($socket, "RCPT TO:<user@domain>\r\n"); $response = fgets($socket);
Einschränkungen
Alternativer Ansatz
Trotz der Einschränkungen der SMTP-Verifizierung eine zuverlässigere Methode besteht darin, einen regulären Ausdruck zu verwenden, um ungültige Adressen herauszufiltern und dann eine E-Mail mit einem Validierungslink zu senden. Dies bestätigt die E-Mail-Adresse des Benutzers und verhindert Tippfehler.
Das obige ist der detaillierte Inhalt vonWie kann ich E-Mail-Adressen in PHP überprüfen, ohne E-Mails zu senden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!