isBizMail tells you whether a given email address belongs to a free email account provider (gmail.com, yahoo.es, yandex.ru etc) or not.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/assets
.vscode
assets @ b365fd9
src
tests
.coveralls.yml
.gitattributes
.gitignore
.gitmodules
.scrutinizer.yml
.travis.yml
LICENSE
Makefile
README.md
composer.json
phpunit.xml

README.md

Business Email Checker Build Status Coverage Status Scrutinizer Code Quality

License PHP version Latest Stable Version Total Downloads composer.lock available

Donate Patreon Donate Paypal Donate Liberapay

isBizMail tells you whether a given email address is free (gmail.com, yahoo.es, yandex.ru etc) or not. The list of emails used by isBizMail is taken from here¹. Detects around 2500 domains and subdomains.

  1. All credits for the list itself go to SpamAssasin authors and contributors

Looking for JavaScript, .NET etc?

🟊🟊🟊 Support this project 🟊🟊🟊

You can support us in a small way, please consider starring and sharing this repo! It helps us getting known and grow the community.

star us

Installation

You can install isBizMail via Composer:

composer require salaros/is-biz-mail

or by adding it directly to your composer.json file:

{
    "require": {
        "salaros/is-biz-mail": "*"
    }
}

Then use it like this:

<?php

require 'path/to/vendor/autoload.php';

use Salaros\Email\IsBizMail;

(new IsBizMail())->isValid('foo@bar.com');      // true

// You can use static access as well
IsBizMail::isValid('hello@gmail.com');          // false
// ...

You can easily drop it into your Yii2 model's rules:

public function rules() {
  return [
    // ...
    [['email'], 'isBusinessEmail'],
    // ...
  ];
}

public function isBusinessEmail($attributeName, $params) {
  $isBussiness = (new IsBizMail())->isValid($this->email);
  if (!isBussiness)
    $this->addError($attributeName, 'Mail boxes such as @gmail.com, @yahoo.com etc are not allowed!');
  return $isBussiness;
}

Testing: PHPUnit

composer install
composer test   # or ./vendor/bin/phpunit