Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

marmichalski/EmailValidator

Open more actions menu
 
 

Repository files navigation

EmailValidator

Build Status Coverage Status Scrutinizer Code Quality SensioLabsInsight

Suported RFCs

This library aims to support:

RFC 5321, 5322, 6530, 6531, 6532.

Requirements

Installation

Run the command below to install via Composer

composer require egulias/email-validator

Getting Started

EmailValidatorrequires you to decide which (or combination of them) validation/s strategy/ies you'd like to follow for each validation.

A basic example with the RFC validation

<?php

use Egulias\EmailValidator\EmailValidator;
use Egulias\EmailValidator\Validation\RFCValidation;

$validator = new EmailValidator();
$validator->isValid("example@example.com", new RFCValidation()); //true

Available validations

  1. RFCValidation
  2. NoRFCWarningsValidation
  3. DNSCheckValidation
  4. SpoofCheckValidation
  5. MultipleValidationWithAnd
  6. Your own validation

MultipleValidationWithAnd

It is a validation that operates over other validations performing a logical and (&&) over the result of each validation.

<?php

use Egulias\EmailValidator\EmailValidator;
use Egulias\EmailValidator\Validation\DNSCheckValidation;
use Egulias\EmailValidator\Validation\MultipleValidationWithAnd;
use Egulias\EmailValidator\Validation\RFCValidation;

$validator = new EmailValidator();
$multipleValidations = new MultipleValidationWithAnd([
    new RFCValidation(),
    new DNSCheckValidation()
]);
$validator->isValid("example@example.com", $multipleValidations); //true

How to extend

It's easy! You just need to implement EmailValidation and you can use your own validation.

Other Contributors

(You can find current contributors here)

As this is a port from another library and work, here are other people related to the previous one:

  • Ricard Clau @ricardclau: Performance against PHP built-in filter_var
  • Josepf Bielawski @stloyd: For its first re-work of Dominic's lib
  • Dominic Sayers @dominicsayers: The original isemail function

License

Released under the MIT License attached with this code.

About

PHP Email address validator library inspired in @dominicsayers isemail function https://github.com/dominicsayers/isemail

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • PHP 100.0%
Morty Proxy This is a proxified and sanitized view of the page, visit original site.