madeitbelgium / verifyemail
PHP Laravel 类,用于验证电子邮件地址并确保它有效并且确实存在于邮件服务器上。
Requires
- php: >=7.3
- illuminate/support: 5.*|^6.0|^7.0|^8.0
Requires (Dev)
- php-coveralls/php-coveralls: ~2.1
- phpunit/phpunit: ^8.0|^9.0
This package is auto-updated.
Last update: 2024-09-11 19:33:05 UTC
README
这是一个 PHP 类,用于验证电子邮件地址并确保它有效且确实存在于邮件服务器上。
此类连接到邮件服务器并检查邮箱是否存在。
安装
在您的 composer.json
中要求此包并更新 composer。
"madeitbelgium/verifyemail": "~1.0"
发布配置文件。设置正确的电子邮件地址。
php artisan vendor:publish
文档
用法
use MadeITBelgium\VerifyEmail\Facades\VerifyEmail; $ve = VerifyEmail::verify('some.email.address@example.com');
或者(您可以设置另一个二级电子邮件地址或更改端口)
$ve = VerifyEmail::verify('some.email.address@example.com', 'my.email.address@my-domain.com', 26);
这将返回一个布尔值。如果电子邮件有效则为 true,否则为 false。
第一个电子邮件地址 'some.email.address@example.com' 是要检查的地址,第二个 'my.email.address@my-domain.com' 是提供给服务器的电子邮件地址。此电子邮件地址需要有效且来自运行脚本的同一服务器。为确保您的服务器不会被当作垃圾邮件处理或列入黑名单,请在此处检查服务器的得分 https://mail-tester.com
如果您想获取任何错误,请在验证函数之后调用此函数
print_r(VerifyEmail::getErrors());
这将返回所有错误(如果有)的数组
Array
(
[0] => No suitable MX records found.
)
如果您想获取连接的所有调试消息,请调用此函数
print_r(VerifyEmail::getDebug());
这将返回在过程中使用的所有消息和值的数组。
Array ( [0] => initialized with Email: h*****@gmail.com, Verifier Email: sam@verifye.ml, Port: 25 [1] => Verify function was called. [2] => Finding MX record... [3] => Found MX: alt4.gmail-smtp-in.l.google.com [4] => Connecting to the server... [5] => Connection to server was successful. [6] => Starting veriffication... [7] => Got a 220 response. Sending HELO... [8] => Response: 250 mx.google.com at your service [9] => Sending MAIL FROM... [10] => Response: 250 2.1.0 OK gw8si3985770wjb.84 - gsmtp [11] => Sending RCPT TO... [12] => Response: 250 2.1.5 OK gw8si3985770wjb.84 - gsmtp [13] => Sending QUIT... [14] => Looking for 250 response... [15] => Found! Email is valid. )
并且要查看服务器发送的 原始 调试消息
print_r(VerifyEmail::getDebug(true));
这将返回一个数组
Array
(
[helo] => 250 mx.google.com at your service
[mail_from] => 250 2.1.0 OK a68si4170774ioe.18 - gsmtp
[rcpt_to] => 250 2.1.5 OK a68si4170774ioe.18 - gsmtp
[quit] => 4
)
注意
-
一些邮件服务器会静默地拒绝测试消息,以防止垃圾邮件发送者检查其用户的电子邮件并筛选有效电子邮件,因此此函数可能无法与所有邮件服务器正常工作。
-
您的服务器必须正确配置为邮件服务器以避免被阻止或列入黑名单。这包括 SSL、SPF 记录、域名密钥、DMARC 记录等。要检查您的服务器,请使用此工具 https://mail-tester.com
支持
支持 GitHub 或邮件: tjebbe.lievens@madeit.be
贡献
请尽量遵循 psr-2 编码风格指南。 http://www.php-fig.org/psr/psr-2/
许可证
此包根据 LGPL 许可证授权。您可以在个人和商业项目中免费使用它。代码可以分支和修改,但原始版权作者应始终被包含在内!