Skip to content

wmde/email-address

Repository files navigation

Email Address

Build Status Latest Stable Version Download count

Email Address value object that can

  • split username and domain
  • normalize Internationalized Domain names (IDN).
class EmailAddress {
	public function __construct( string $emailAddress ) {
		// Validation
	}
	public function getUserName(): string {}
	public function getDomain(): string {}
	public function getNormalizedDomain(): string {}
	public function getFullAddress(): string {}
	public function getNormalizedAddress(): string {}
	public function __toString(): string {}
}

Installation

To use the Email Address library in your project, simply add a dependency on wmde/email-address to your project's composer.json file. Here is a minimal example of a composer.json file that just defines a dependency on Email Address 2.x:

{
    "require": {
        "wmde/email-address": "~2.0"
    }
}

Development

Installing dependencies

To pull in the project dependencies via Composer, run:

make install

To update them, run

make update

Running the CI checks

To run all CI checks, which includes PHPUnit tests, PHPCS style checks and static analysis with PHPStan, run:

make

Running the tests

To run the PHPUnit tests run

make test

To run a subset of PHPUnit tests or otherwise pass flags to PHPUnit, run

docker-compose run --rm app ./vendor/bin/phpunit --filter SomeClassNameOrFilter