A Laravel package for checking e-mail addresses; to see if they've been issued by a provider of free/throwaway/disposable addresses, or are on a domain that's been blacklisted.
You may find it useful to try to combat spam and fake accounts; it ought to be straightforward to integrate it into the registration process.
The package needs to download the data provided by the freemail project. It's a very quick process; it just needs to know where to put the files.
By default, it'll put them in a directory named email-checker
on your local disk, but feel free to tweak that. Just publish the config file:
php artisan vendor:publish --provider="Lukaswhite\LaravelEmailChecker\LaravelEmailCheckerServiceProvider"
Alternatively, simply add an entry to your .env
file named EMAIL_CHECKER_DIRECTORY
.
Then simply run the following command:
php artisan email-checker:install
Now you can check an e-mail address using the façade:
use Lukaswhite\LaravelEmailChecker\LaravelEmailChecker;
$result = LaravelEmailChecker::check('spammer@spammy.spam');
This returns an object with the following methods:
$result->isDisposable(); // true|false
$result->isFree(); // true|false
$result->isBlacklisted(); // true|false
To ensure the data's up-to-date, simply run the following command. It should only take a few seconds, network speed permitting:
php artisan email-checker:update