xylis/mailboxlayer-client

用于验证电子邮件的MailboxLayer API客户端

1.0.1 2019-08-04 15:06 UTC

This package is auto-updated.

Last update: 2024-08-29 05:18:31 UTC


README

Latest Version on Packagist Software License Build Status Total Downloads

这个库是MailboxLayer的PHP客户端,它有助于验证用户提供的电子邮件地址是否有效、存在或获取有关电子邮件地址的一些有用信息。

结构

src/
tests/
vendor/

安装

此包需要PHP >= 7.1。

通过Composer

$ composer require xylis/mailboxlayer-client

基本用法

$client = new Xylis\MailboxLayer\Client('YOUR_API_KEY');

// Check if the email is valid
$client->validate('email@ddress.com')->isValid();

文档

客户端构造函数

$client = new Xylis\MailboxLayer\Client(string $apiKey, bool $smtpCheck = true, bool $prettyFormat = false, bool $catchAllCheck = false)
  • 如果您将$smtpCheck设置为false(默认为true),则API不会检查电子邮件地址是否存在
  • 如果您将$prettyFormat设置为true(默认为false),则API将返回格式化的JSON结果(仅用于调试)
  • 如果您将$catchAllCheck设置为true(默认为false),则API将检查您检查的地址是否是捕获所有邮件的邮箱

请阅读MailboxLayer 文档以了解他们的API如何工作。

validate(string $email)返回一个电子邮件对象,因此您可以这样做

$email = $client->validate('email@address.com');

// Check if the email is valid
$email->isFormatValid();

// Check if the email format is valid
$email->isFormatValid();

// Check if the email format is valid
$email->isMxFound();

// Check if email address exists, return false if not
$email->isSmtpValid();

// Get the email address (return email@ddress.com)
$email->getMail();

// Get the user from email address (return email)
$email->getUser();

// Get the domain from email address (return ddress.com)
$email->getDomain();

// Get suggestion if the email address is misspelled 
$email->getSuggestion();

// Get quality score between 0 (bad) and 1 (good)
$email->getQualityScore();

// Check if email address is free delivered (domains like gmail.com and yahoo.com)
$email->isFreeDeliveredEmailAddress();

// Check if email address is disposable (trash & temporary mailbox)
$email->isDisposable();

// Check if email address is a role mail address (like support)
$email->isRoleEmailAddress();

validate函数的工作原理

$client->validate(string $emailAddress, bool $bypassFilterValidation = false);

如果$bypassFilterValidation设置为true(默认为false),则客户端不会验证$emailAddress本身是否是电子邮件,因此客户端无论如何都会向API发出API请求。$bypassFilterValidation设置为false以提高性能并避免无用的结果

变更日志

有关最近更改的更多信息,请参阅CHANGELOG

测试

$ composer test

贡献

请参阅CONTRIBUTINGCODE_OF_CONDUCT以获取详细信息。

安全

如果您发现任何与安全相关的问题,请通过电子邮件Julien RAVIA报告,而不是使用问题跟踪器。

致谢

许可证信息