lukaswhite / laravel-email-checker
A Laravel package that checks e-mail addresses to see if they're disposable, are on a domain that's been blacklisted or from a provider of free addresses
Requires
- illuminate/console: ^6.0|^7.0|^8.74|^9.0|^10.0
- illuminate/support: ^6.0|^7.0|^8.74|^9.0|^10.0
- lukaswhite/email-checker: ^1.0.0
README
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.
Usage
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
Updating the Data
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