Mengesahkan Alamat E-mel tanpa Menghantar E-mel
Dengan kemunculan penapisan spam dan pengesahan senarai e-mel, pembangun sering memerlukan cara untuk mengesahkan alamat e-mel tanpa menghantar e-mel. PHP menyediakan penyelesaian menggunakan SMTP.
Pengesahan SMTP
SMTP (Simple Mail Transfer Protocol) digunakan untuk menghantar e-mel. Sokongan PHP untuk SMTP membenarkan pengesahan e-mel dalam dua cara:
1. Perintah VRFY:
Arahan VRFY menanyakan pelayan untuk mengesahkan sama ada penerima e-mel wujud. Jika pelayan membalas dengan 2.0.0 DSN (Pemberitahuan Status Penghantaran), alamat e-mel adalah sah.
Contoh:
$socket = fsockopen('server', 25); fwrite($socket, "VRFY user\r\n"); $response = fgets($socket);
2. RCPT TO Command:
Arahan RCPT TO cuba menghantar e-mel. Jika penerima tidak wujud, pelayan akan bertindak balas dengan DSN 5.1.1.
Contoh:
$socket = fsockopen('server', 25); fwrite($socket, "MAIL FROM:<sender>\r\n"); fwrite($socket, "RCPT TO:<user@domain>\r\n"); $response = fgets($socket);
Had
Pendekatan Alternatif
Walaupun pengehadan pengesahan SMTP, a kaedah yang lebih dipercayai ialah menggunakan ungkapan biasa untuk menapis alamat yang tidak sah dan kemudian menghantar e-mel dengan pautan pengesahan. Ini mengesahkan alamat e-mel pengguna dan menghalang ralat tipografi.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengesahkan Alamat E-mel dalam PHP Tanpa Menghantar E-mel?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!