miovisman / normemail
用于对电子邮件进行规范化处理,以便进行封禁、请求缓存至SFS或检查新用户的唯一性。
1.0.0
2020-01-11 04:21 UTC
Requires
- php: >=5.6.0
- ext-intl: *
- ext-mbstring: *
This package is auto-updated.
Last update: 2024-09-11 14:53:41 UTC
README
安装
composer require miovisman/normemail
normalize() 方法
$nEmail = new MioVisman\NormEmail\NormEmail(); $email = $nEmail->normalize($email);
-
该方法不验证电子邮件地址
-
不要使用规范化后的电子邮件发送邮件
- 使用规范化后的电子邮件检查新用户的封禁或电子邮件唯一性。检查规范化后的电子邮件 ;)
- 域名是小写(并且是Punycode编码)
- 除非指定,否则本地部分是小写的
- 本地部分在"+"之后被截断(对于Yahoo域名 - 在"-"之后)
// some string
=>
ExampLe => example
ExampLe@ => example@
exaMple.COM => example.com
.example.com => .example.com
@examPLe.com => example.com
"examPLe.com => "example.com
"USER+++NAME@EXAMpLE.com => "USER+++NAME@example.com
googlemail.com => gmail.com
pm.me => protonmail.com
yandex.tj => yandex.ru
ya.ru => yandex.ru
.ya.ru => .yandex.ru
// Unicode
ПОЛЬЗОВАТЕЛЬ@домен.РУ => пользователь@xn--d1acufc.xn--p1ag
пользователь+тег@домен.ру => пользователь@xn--d1acufc.xn--p1ag
// Gmail
User.namE+tag@gmail.com => username@gmail.com
u.sern.ame+tag+tag+tag@googlemail.com => username@gmail.com
// Protonmail
u_s.e-rname+tag@pm.me => username@protonmail.com
user-name@protonmail.ch => username@protonmail.com
// Yahoo (.com, .ae, .at, ...)
username-tag@yahoo.com => username@yahoo.com
user+name-tag@yahoo.fr => user+name@yahoo.fr
// Yandex (13 domains)
user.name+tag@яндекс.рф => user-name@yandex.ru
user-name@yandex.com => user-name@yandex.ru
username@ya.ru => username@yandex.ru
许可证
该项目遵循MIT许可证。请参阅许可证文件以获取详细信息。