elbgoods / laravel-trashmail-rule
Laravel 验证规则,用于防止垃圾邮件电子邮件地址。
Requires
- php: ^8.0
- ext-json: *
- astrotomic/laravel-guzzle: ^2.3
- illuminate/cache: ^8.0 || ^9.0
- illuminate/support: ^8.0 || ^9.0
Requires (Dev)
- orchestra/testbench: ^6.0 || ^7.0
- phpunit/phpunit: ^9.3
- roave/security-advisories: dev-latest
README
此软件包提供了一种验证规则,用于防止垃圾邮件电子邮件地址。
安装
首先,您需要将此软件包添加到您的 composer.json
composer require elbgoods/laravel-trashmail-rule
之后,您可以发布软件包翻译文件以调整错误消息
php artisan vendor:publish --provider="Elbgoods\TrashmailRule\TrashmailRuleServiceProvider" --tag=lang php artisan vendor:publish --provider="Elbgoods\TrashmailRule\TrashmailRuleServiceProvider" --tag=config
配置
该软件包提供了一种配置,用于定义规则行为。
拒绝的域名
您可以添加自己的拒绝域名列表,这些域名将被始终阻止。
允许的域名
您可以添加自己的允许域名列表,这些域名将被始终允许通过。
支持的提供者
- 本地配置 -
\Elbgoods\TrashmailRule\Providers\ConfigProvider
- https://disposable-email-detector.com -
\Elbgoods\TrashmailRule\Providers\DisposableEmailDetectorProvider
- https://verifier.meetchopra.com -
\Elbgoods\TrashmailRule\Providers\VerifierProvider
使用方法
验证规则
此软件包提供了一个基本的 TrashmailRule
,您可以使用它。所有更具体的规则都通过预定义的 format
扩展此规则。
use Elbgoods\TrashmailRule\Rules\TrashmailRule; $rule = new TrashmailRule();
默认情况下,规则需要值 - 如果您想接受 null
值,您可以使用 nullable()
方法或设置 $required
参数为 false
。
use Elbgoods\TrashmailRule\Rules\TrashmailRule; $rule = new TrashmailRule(false); $rule->nullable();
外观
您还可以使用外观来检查验证之外的任何电子邮件地址。这将运行与验证规则相同的逻辑,并运行配置中设置的 所有提供者。
use Elbgoods\TrashmailRule\Facades\Trashmail; Trashmail::isDisposable('example@elbgoods.de');
单个提供者
您还可以仅使用单个提供者进行检查。请注意,所有提供者仅接受要检查的域名,而不是完整的电子邮件地址。外观提供了一个方法,该方法返回电子邮件地址中使用的域名。
use Elbgoods\TrashmailRule\Facades\Trashmail; Trashmail::provider('config')->isDisposable( Trashmail::getDomain('example@elbgoods.de') );
自定义提供者
如果您想添加自己的提供者,您也可以这样做。
use Elbgoods\TrashmailRule\Facades\Trashmail; use Illuminate\Contracts\Container\Container; use Elbgoods\TrashmailRule\Contracts\ProviderContract; Trashmail::extend('custom_provider', static function (Container $app): ProviderContract { return new CustomProvider(); });
变更日志
有关最近更改的更多信息,请参阅 CHANGELOG。
版本控制
此软件包遵循 语义版本控制。
贡献
有关详细信息,请参阅 CONTRIBUTING。
安全性
有关详细信息,请参阅 SECURITY。
致谢
许可证
MIT 许可证 (MIT)。有关更多信息,请参阅 许可证文件。
开源软件
您可以自由使用此软件包,但如果它进入您的生产环境,我们非常希望您购买或为世界种一棵树。
众所周知,解决气候危机并保持我们的温度不超过 1.5C 的最佳工具之一是 种植树木。如果您为我的森林做出贡献,您将为当地家庭创造就业机会并恢复野生动物栖息地。
您可以在 offset.earth/treeware 购买树木。
有关 Treeware 的更多信息,请参阅 https://treeware.earth。