usercheck / usercheck-laravel
UserCheck API的Laravel验证规则
v0.1.0
2024-09-22 22:24 UTC
Requires
- php: ^7.4|^8.0
- illuminate/support: ^11.0
Requires (Dev)
- larastan/larastan: ^2.9
- laravel/pint: ^1.14
- nunomaduro/collision: ^8.1.1||^7.10.0
- orchestra/testbench: ^9.0.0||^8.22.0
- pestphp/pest: ^2.34
- pestphp/pest-plugin-arch: ^2.7
- pestphp/pest-plugin-laravel: ^2.3
- phpstan/extension-installer: ^1.3
- phpstan/phpstan-deprecation-rules: ^1.1
- phpstan/phpstan-phpunit: ^1.3
README
A Laravel包,用于通过UserCheck.com API验证电子邮件地址。
✨ 功能
- 使用始终更新的API阻止一次性电子邮件地址
- 验证电子邮件地址
- 检查MX记录
- 识别个人电子邮件地址
- 可自定义验证规则
- Laravel Facade便于使用
- 支持本地化
要求
- PHP 8.0+
- Laravel 11.0+
安装
通过Composer安装此包
composer require usercheck/usercheck-laravel
配置
将您的UserCheck API密钥添加到.env
文件中
USERCHECK_API_KEY=your_api_key_here
您可以通过在https://app.usercheck.com/register注册来获取免费API密钥。
用法
在Laravel验证中使用usercheck
规则
$request->validate([ 'email' => 'required|email|usercheck' ]);
选项
默认情况下,usercheck
规则将仅使用UserCheck API验证电子邮件地址的语法。如果电子邮件无效,验证将失败。
usercheck
规则接受多个参数
block_disposable
:如果电子邮件来自一次性电子邮件提供商,则验证失败block_no_mx
:如果域没有MX记录,则验证失败block_public_domain
:对于公共电子邮件域(例如,Gmail,Yahoo)进行验证失败。非常适合防止用户使用个人电子邮件地址注册。domain_only
:仅验证电子邮件地址的域名部分。非常适合隐私;只会将域名发送到API。
您可以将这些选项组合起来创建自定义验证规则。
$request->validate([ 'email' => 'required|email|usercheck:domain_only,block_disposable,block_no_mx', ]);
使用Facades
您还可以直接使用UserCheck facade
use UserCheck\Laravel\Facades\UserCheck; $result = UserCheck::validateEmail('test@example.com'); $result = UserCheck::validateDomain('example.com');
这两种方法都返回一个包含is_valid
和error_code
键的数组。
本地化
该包默认包含英文翻译。要自定义错误消息,请发布语言文件
php artisan vendor:publish --provider="UserCheck\Laravel\UserCheckProvider" --tag="lang"
然后,编辑resources/lang/vendor/usercheck
中的文件。
测试
使用以下命令运行测试
composer test
贡献
欢迎贡献!请参阅CONTRIBUTING.md以获取详细信息。
安全
如果您发现任何与安全相关的问题,请通过电子邮件security@usercheck.com报告,而不是使用问题跟踪器。
许可
MIT许可(MIT)。有关更多信息,请参阅许可文件。
支持
有关支持,请通过电子邮件support@usercheck.com或打开GitHub上的问题。