fedek6 / tld-mail-validator

使用所有已知TLDs列表的PHP电子邮件地址验证器

1.0.3 2021-03-22 12:47 UTC

This package is auto-updated.

Last update: 2024-09-08 17:21:13 UTC


README

Build Status

使用所有已知的TLDs和简单的域MX记录检查的PHP电子邮件地址验证器。具有自动更新顶级域列表的功能。

使用示例

use Fedek6\TldMailValidator\TldMailValidator;

/** @var string $tldsFilePath  */
$tldsFilePath = __DIR__ . '/../data/tlds-alpha-by-domain.txt';

/** @var array $addresses */
$addresses = require __DIR__ . '/addresses.php';

/** @var \Fedek6\TldMailValidator\TldMailValidator $validator */
$validator = new TldMailValidator($tldsFilePath);

if ($validator->validate('janbrzechwa@mail.ru')) {
    echo 'This is email is OK. and has proper actual tld.';
} else {
    echo 'Something\'s wrong with this address';
}

如果你还想测试域的MX记录(较慢),将第二个参数传递给构造函数

/** @var \Fedek6\TldMailValidator\TldMailValidator $validator */
$validator = new TldMailValidator($tldsFilePath, TldMailValidator::TEST_ALL);

测试

composer test

或者

./vendor/bin/phpunit --testdox --verbose --colors tests

测试单个文件

vendor/bin/phpunit --testdox --verbose --colors tests/RemoteFileUpdaterTest.php

部署前的干运行

php -f examples/mx.php
php -f examples/simple.php