studiovisual/verifyemail

提供电子邮件地址验证的方法

1.0.0 2023-06-20 17:34 UTC

This package is auto-updated.

Last update: 2024-09-13 16:55:24 UTC


README

在您的提交表单中是否厌倦了那些讨厌的虚假电子邮件地址?

EmailAddressVerifier类允许您验证电子邮件地址的正确语法,并且可选地验证其存在。

可以使用EmailAddressVerifier::validationLevel属性(由AddressValidationLevel类定义)设置以下验证级别

  • 语法检查 - 通过执行语法检查验证电子邮件地址。
  • DNS查询 - 对电子邮件地址字符串中的域名部分执行DNS MX查找,以找到负责将电子邮件发送到该域的SMTP MX主机。
  • SMTP连接 - 测试到SMTP MX主机的连接。
  • 发送尝试 - 测试连接,发送EHLO/HELOMAIL FROM命令,并在RCPT TO命令中提交给定的电子邮件地址字符串。这模仿了正常的发送尝试,只是不发送实际的消息数据。如果服务器接受收件人并表示“是的,我准备好接收消息数据”,则组件会重置连接并断开连接,报告地址是正确的。

如何安装(使用composer)

使用composer安装...

composer require "masroore/verifyemail"

在纯PHP中

require 'vendor/autoload.php';

使用方法:检查电子邮件地址

要执行PHP电子邮件验证,请在您的代码中导入VerifyEmail命名空间

use VerifyEmail\EmailAddressVerifier;
use VerifyEmail\Utils;

要在您的PHP项目中验证电子邮件地址,请使用EmailAddressVerifier::verify()方法。

默认情况下,EmailAddressVerifier.validationLevel已经是SendAttempt(可用的最先进的电子邮件地址检查)。因此,我们不需要明确设置此模式以对电子邮件地址执行所有可能的检查。

$verifier = new EmailAddressVerifier();
$verifier->setMailFrom('sender@domain.tld');
$verifier->setHelloDomain('domain.tld');
$verifier->setValidationLevel(AddressValidationLevel::SendAttempt);
$result = $verifier->verify('check_email@domain.tld');

if ($result === AddressValidationLevel::OK) {
    echo 'Email verified';
}

上一个示例通过实例化EmailAddressVerifier对象来检查有效电子邮件地址。对于您的PHP项目的快速表单验证,您还可以使用EmailAddressVerifier::validate()便利方法。

$level = null;
if (EmailAddressVerifier::validate($email, $level)) {
    echo 'Email verified';
}

PHP电子邮件检查器,电子邮件测试器,电子邮件验证器,电子邮件验证,检查电子邮件地址,验证电子邮件地址,免费电子邮件验证器,测试电子邮件地址,有效电子邮件地址