fossil01/email-normalizer

A library that will normalize email addresses for cases when different email addresses all point towards a single email account

2.1.2 2024-05-28 13:20 UTC

This package is auto-updated.

Last update: 2024-05-28 13:22:36 UTC


README

This library will normalize email addresses for cases when different email addresses all point towards a single email account. For example user.name+whatever@gmail.com points to username@gmail.com. This is useful for cases such as when you want to limit a single user using a single email account to signup using different email addresses.

Packagist Version Packagist Downloads Codecov GitHub license

Installation

composer require gabrola/email-normalizer

Usage

<?php
use Gabrola\EmailNormalizer\EmailNormalizer;
use Gabrola\EmailNormalizer\EmailRules;

$emailNormalizer = new EmailNormalizer(new EmailRules());
$normalizedEmail = $emailNormalizer->normalize('username+whatever@gmail.com');

echo $normalizedEmail; //Returns username@gmail.com

Rule Types

  • Plus Tags: username+tag@gmail.com normalizes as username@gmail.com
  • Hyphen Tags: username-tag@yahoo.com normalizes as username@yahoo.com
  • Dots: first.last@gmail.com normalizes as firstlast@gmail.com
  • Subdomain Addressing: whatever@username.fastmail.com normalizes as username@fastmail.com
  • Aliases: username@googlemail.com normalizes as username@gmail.com

Providers

  • Gmail
  • Outlook
  • Yahoo
  • Fastmail
  • Apple iCloud
  • Yandex
  • Mail.ru
  • ProtonMail