Email address value object.

Related tags

Email email-address
Overview

Email address value object

Build Status Coverage Status Downloads this Month Latest stable

Installation

Via Composer:

$ composer require nepada/email-address

Usage

This package provides two implementations of email address value object:

  1. RfcEmailAddress - it adheres to RFCs and treats local part of email address as case sensitive. The domain part is normalized to lower case ASCII representation.
  2. CaseInsensitiveEmailAddress - the only difference from RfcEmailAddress is that local part is considered case insensitive and normalized to lower case.

It is up to you to decide which implementation suites your needs. If you want to support both implementations, use Nepada\EmailAddress\EmailAddress as a typehint. You can also cast one representation to the other using RfcEmailAddress::toCaseInsensitiveEmailAddress() and CaseInsensitiveEmailAddress::toRfcEmailAddress().

Creating value object

$rfcEmailAddress = Nepada\EmailAddress\RfcEmailAddress::fromString('Real.example+suffix@HÁČKYčárky.cz');
$rfcEmailAddress = Nepada\EmailAddress\RfcEmailAddress::fromDomainAndLocalPart('HÁČKYčárky.cz', 'Real.example+suffix');

$ciEmailAddress = Nepada\EmailAddress\CaseInsensitiveEmailAddress::fromString('Real.example+suffix@HÁČKYčárky.cz');
$ciEmailAddress = Nepada\EmailAddress\CaseInsensitiveEmailAddress::fromDomainAndLocalPart('HÁČKYčárky.cz', 'Real.example+suffix');

Nepada\EmailAddress\InvalidEmailAddressException is thrown in case of invalid input value.

Converting back to string

Casting the value object to string, will result in the original (non-canonical) string representation of email address:

echo((string) $emailAddress); // Real.example+suffix@HÁČKYčárky.cz
echo($emailAddress->toString()); // Real.example+suffix@HÁČKYčárky.cz

Canonical string representation of email address

echo($emailAddress->getValue()); // [email protected]

Getting normalized local and domain part separately

echo($emailAddress->getLocalPart()); // real.example+suffix
echo($emailAddress->getDomain()); // xn--hkyrky-ptac70bc.cz

Integrations

Comments
  • Update phpstan/phpstan requirement from ^0.12.52 to ^0.12.78

    Update phpstan/phpstan requirement from ^0.12.52 to ^0.12.78

    Updates the requirements on phpstan/phpstan to permit the latest version.

    Release notes

    Sourced from phpstan/phpstan's releases.

    0.12.78

    Improvements 🔧

    Bugfixes 🐛

    Function signature fixes 🤖

    Commits
    • eecce8d PHPStan 0.12.78
    • 9289342 Updated PHPStan to commit f124a4528429cfb79c6907d60b267d2541506b0b
    • aa62051 Improve CI
    • 9baf6b2 Update Slevomat CS test
    • a494e80 Updated PHPStan to commit 91894ff918d4453d2eb1197cb63c995b11bb801a
    • f5adf8b Updated PHPStan to commit bf320b0b2551aeb06934c64edcc2597f740ba401
    • 3706622 Updated PHPStan to commit 7d279fcfe8d9c2bf9066be302209a58c15b9b8bc
    • b132ef0 Updated PHPStan to commit 67b2d1cfa5d9bf769cd71cb2d28dd2f9ca86ba2b
    • 2ed4ec1 Updated PocketMine baseline
    • d71a3b6 Updated PHPStan to commit f74f05cc5e530389d8cde8b628bbca7e7bac13de
    • Additional commits viewable in compare view

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.

    Dependabot will merge this PR once CI passes on it, as requested by @xificurk.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies php 
    opened by dependabot[bot] 8
  • Update phpstan/phpstan-nette requirement from 0.12.16 to 0.12.17

    Update phpstan/phpstan-nette requirement from 0.12.16 to 0.12.17

    Updates the requirements on phpstan/phpstan-nette to permit the latest version.

    Release notes

    Sourced from phpstan/phpstan-nette's releases.

    0.12.17

    • 14dad5b - Bump metcalfc/changelog-generator from v0.4.4 to v1.0.0
    • 4930ff1 - Dynamic return type extension for getUnsafeValues added in nette/forms 3.1.2
    Commits
    • 4930ff1 Dynamic return type extension for getUnsafeValues added in nette/forms 3.1.2
    • 14dad5b Bump metcalfc/changelog-generator from v0.4.4 to v1.0.0
    • See full diff in compare view

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.

    Dependabot will merge this PR once it's up-to-date and CI passes on it, as requested by @xificurk.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies php 
    opened by dependabot[bot] 6
  • Update spaze/phpstan-disallowed-calls requirement from ^1.0 to ^1.3

    Update spaze/phpstan-disallowed-calls requirement from ^1.0 to ^1.3

    Updates the requirements on spaze/phpstan-disallowed-calls to permit the latest version.

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.

    Dependabot will merge this PR once CI passes on it, as requested by @xificurk.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies php 
    opened by dependabot[bot] 6
  • Update phpstan/phpstan requirement from 1.1.1 to 1.2.0

    Update phpstan/phpstan requirement from 1.1.1 to 1.2.0

    Updates the requirements on phpstan/phpstan to permit the latest version.

    Release notes

    Sourced from phpstan/phpstan's releases.

    1.2.0

    Improvements 🔧

    Bugfixes 🐛

    Function signature fixes 🤖

    Commits
    • cbe085f PHPStan 1.2.0
    • 8170c41 Levels start at 0, so there are 10 levels
    • 4d6fefa Updated PHPStan to commit c862bb97482bced730988217685a8ae019436ad6
    • e33400f Updated PHPStan to commit 5a0d0314ea20b905e952670820554c541db8029c
    • 39d0d4e Update text to note that level 9 is the strictest
    • 898dca3 Updated PHPStan to commit b42ceb618accbe20651165b0a049da299013e273
    • b79d8d0 Updated PHPStan to commit 480c516ce2795d7af27142ac7c370e0d1f6bbb38
    • 362e194 Updated PHPStan to commit 7ed316d5983eb5a2601a5c3eb7781f8c06a50503
    • bc99be7 Updated PHPStan to commit db456dd6fd79405bbbdac00fddb8ca0acb90ed49
    • a0a82d2 Open 1.2-dev
    • Additional commits viewable in compare view

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.

    Dependabot will merge this PR once CI passes on it, as requested by @xificurk.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies php 
    opened by dependabot[bot] 5
  • Update phpstan/phpstan-strict-rules requirement from 0.12.10 to 0.12.11

    Update phpstan/phpstan-strict-rules requirement from 0.12.10 to 0.12.11

    Updates the requirements on phpstan/phpstan-strict-rules to permit the latest version.

    Release notes

    Sourced from phpstan/phpstan-strict-rules's releases.

    0.12.11

    • 2b72e8e - Set reportMaybesInPropertyPhpDocTypes: true
    Commits

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.

    Dependabot will merge this PR once CI passes on it, as requested by @xificurk.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies php 
    opened by dependabot[bot] 5
  • Update phpstan/phpstan-nette requirement from ^0.12.6 to ^0.12.14

    Update phpstan/phpstan-nette requirement from ^0.12.6 to ^0.12.14

    Updates the requirements on phpstan/phpstan-nette to permit the latest version.

    Release notes

    Sourced from phpstan/phpstan-nette's releases.

    0.12.14

    • 16a1457 - UI\ITemplate is an alias to UI\Template
    Commits
    • 16a1457 UI\ITemplate is an alias to UI\Template
    • 21e0c83 Identity is now an alias to SimpleIdentity
    • 90791ea Dependabot
    • 20cb705 Automatic release workflow
    • 119049d Use GitHub Actions instead of Travis CI
    • ff691c1 Enable xdebug for coveralls
    • 5064e8d Try disable xdebug on travis
    • 5a75d56 Don't lint data dir, skip test for php <7.4
    • 6baa42f Test for @inject doc
    • 348cb61 Property isAlwaysWritten calls isInitialized as it's same check. Drop IPresen...
    • Additional commits viewable in compare view

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.

    Dependabot will merge this PR once CI passes on it, as requested by @xificurk.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies php 
    opened by dependabot[bot] 5
  • Update nette/tester requirement from ^2.3.2 to ^2.3.5

    Update nette/tester requirement from ^2.3.2 to ^2.3.5

    Updates the requirements on nette/tester to permit the latest version.

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.

    Dependabot will merge this PR once CI passes on it, as requested by @xificurk.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies php 
    opened by dependabot[bot] 5
  • Update shipmonk/phpstan-rules requirement from 1.2.0 to 2.0.0

    Update shipmonk/phpstan-rules requirement from 1.2.0 to 2.0.0

    Updates the requirements on shipmonk/phpstan-rules to permit the latest version.

    Release notes

    Sourced from shipmonk/phpstan-rules's releases.

    2.0.0

    Major changes :tada:

    • Much easier setup. Just include vendor/shipmonk/phpstan-rules/rules.neon in your codebase; no need to register all rules, visitors and tags as before (shipmonk-rnd/phpstan-rules#44)
      • Also, you can easily enable/disable rules one by one like this:
    includes:
        - vendor/shipmonk/phpstan-rules/rules.neon
    

    parameters: shipmonkRules: allowNamedArgumentOnlyInAttributes: enabled: false

    New features

    Improvements

    • ForbidFetchOnMixedRule and ForbidMethodCallOnMixedRule does not make sense on level9, so it gets autodisabled in that case (shipmonk-rnd/phpstan-rules#38)

    Error message changes

    Commits
    • 3a3f8b1 Drop deprecated --no-suggest in CI (#53)
    • 3924b8a composer: require php ^7.4|^8.0 (#52)
    • 57eaae4 Readme: fix slevomat/cs link (#51)
    • f0e3969 ForbidNullInAssignOperationsRule (#50)
    • d9ecf7c Readme: match titles with config (#49)
    • c07f52a ForbidAssignmentNotMatchingVarDocRule: allow narrowing option (#45)
    • 534ac7f rules.neon: add forgotten NamedArgumentSourceVisitor (#48)
    • 31698cb ForbidXxxOnMixed: autodisable on level9 (#38)
    • 03668ce Replace rule+visitor DIC registration by config (#44)
    • 98c030a Tests working with and without listType (#46)
    • Additional commits viewable in compare view

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.

    Dependabot will merge this PR once CI passes on it, as requested by @xificurk.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies php 
    opened by dependabot[bot] 4
  • Update phpstan/phpstan requirement from 1.4.6 to 1.5.3

    Update phpstan/phpstan requirement from 1.4.6 to 1.5.3

    Updates the requirements on phpstan/phpstan to permit the latest version.

    Release notes

    Sourced from phpstan/phpstan's releases.

    1.5.3

    Improvements 🔧

    Bugfixes 🐛

    Commits
    • 39953ac PHPStan 1.5.3
    • f71b64c Update Composer baseline
    • 5cc28c0 Fix Slevomat CS build
    • 5c2e860 Fix Nextras build
    • bf9eedc Updated PHPStan to commit 565248deba4f553011f77ee8f512e53ff453a795
    • 689408b Updated PHPStan to commit ae67ac8674253c877b0bb480ed780c6c44fb4e5f
    • fb718cd Updated PHPStan to commit 3e69c480ff8c7efe5415944938ecd0d5bc3b7008
    • e1d2004 Updated PHPStan to commit 925eabb4ca12f5b588f84dcf726958084734fcdf
    • 409c17b Updated PHPStan to commit 9571283ce589afa757e341c02be4fb39326c155e
    • 2239f6a Updated PHPStan to commit 6fa7c9097d060e7eddd81adf7a6809eb94a221a6
    • Additional commits viewable in compare view

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.

    Dependabot will merge this PR once CI passes on it, as requested by @xificurk.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies php 
    opened by dependabot[bot] 4
  • Update phpstan/phpstan requirement from 0.12.85 to 0.12.88

    Update phpstan/phpstan requirement from 0.12.85 to 0.12.88

    Updates the requirements on phpstan/phpstan to permit the latest version.

    Release notes

    Sourced from phpstan/phpstan's releases.

    0.12.88

    Improvements 🔧

    Bugfixes 🐛

    Function signature fixes 🤖

    Commits
    • 464d1a8 PHPStan 0.12.88
    • 525a99b Fix phpstan-mockery extension test
    • 6d7fb64 Updated PHPStan to commit 84ea0e143ccfd200dbeda9af1ee6ae35941ae4aa
    • ff96359 Updated PHPStan to commit 9c5ddc52508618df339e13bc6d7047b4198de5a7
    • ef96f46 Updated PHPStan to commit d4fb41c1efacabf1d90a5a82c21edb78a779a0df
    • 9418303 Updated PHPStan to commit e8ef18763df2c6226871ba3dca2a160df2bef30d
    • 91d00d0 Update output-format.md
    • 34ea301 Update output-format.md
    • facc75c Clickable editor URL config reference
    • efed263 Update output-format.md
    • Additional commits viewable in compare view

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.

    Dependabot will merge this PR once it's up-to-date and CI passes on it, as requested by @xificurk.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies php 
    opened by dependabot[bot] 4
  • Update nepada/coding-standard requirement from 7.3 to 7.4.0

    Update nepada/coding-standard requirement from 7.3 to 7.4.0

    Updates the requirements on nepada/coding-standard to permit the latest version.

    Release notes

    Sourced from nepada/coding-standard's releases.

    7.4.0

    • Bump squizlabs/php_codesniffer to version ^3.6
    • Bump slevomat/coding-standard to version ^7.0
    • Enable new slevomat sniffs for PHP 8.0
    Commits
    • 5f9df1c Enable new sniffs for PHP 8.0
    • cc1b1fa Bump squizlabs/php_codesniffer and slevomat/coding-standard versions
    • 75d1aa1 Switch to monthly dependabot updates
    • 0d36b96 Enable dependabot
    • 274849f Run tests against PHP 8.0
    • 29ed973 Update CI badge
    • 7adeb84 Remove travis config
    • 9d0ff04 Migrate CI to Github Actions
    • See full diff in compare view

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.

    Dependabot will merge this PR once CI passes on it, as requested by @xificurk.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies php 
    opened by dependabot[bot] 4
Releases(v3.1.1)
  • v3.1.1(Sep 24, 2022)

  • v3.1.0(Oct 31, 2021)

  • v3.0.0(Nov 14, 2020)

    • Drop deprecated methods EmailAddress::getLowercaseValue() and EmailAddress::getOriginalValue() (BC-break).
    • Drop deprecated named constructors from EmailAddress and convert it to interface (BC-break).
    • Mark most of the AbstractEmailAddress methods as final (possible BC-break).
    • Explicitly require ext-mbstring in composer.json.
    • Compatible with PHP 8.0.
    Source code(tar.gz)
    Source code(zip)
  • v2.3.0(Jun 5, 2020)

    New

    • Introduce two distinct implementations of RfcEmailAddress and CaseInsensitiveEmailAddress to be used instead of generic EmailAddress.
    • Add EmailAddress::equals() for comparing two email address value objects.

    Deprecations

    • EmailAddress::getOriginalValue() is deprecated, use toString() instead.
    • EmailAddress::getLowercaseValue() is deprecated, for case insensitive representation of email address use directly CaseInsensitiveEmailAddress implementation.
    • Named constructors on EmailAddress are deprecated, you should use named constructors of a specific implementation.
    • For backward compatibility reasons EmailAddress exists as an abstract class. It should not be inherited from by userland. It will be converted to interface in the next major release.
    Source code(tar.gz)
    Source code(zip)
  • v2.2.0(Dec 23, 2019)

  • v2.1.0(Dec 23, 2019)

  • v2.0.0(Oct 29, 2018)

    • Added EmailAddress::toString() method
    • Constructor is private, use static factories EmailAddress::fromString() and EmailAddress::fromDomainAndLocalPart() instead (BC break)
    • EmailAddress is final (possible BC break)
    Source code(tar.gz)
    Source code(zip)
  • v1.1.0(Jul 9, 2018)

  • v1.0.0(Jun 2, 2018)

Owner
null
Disposable email address validator for Laravel

Laravel Disposable Email Adds a validator to Laravel for checking whether a given email address isn't originating from disposable email services such

null 332 Dec 29, 2022
Magento 2 Email Catcher or Email Logger Module.

Magento 2 Module Experius email catcher / - logger

Experius 49 Dec 16, 2021
SendPortal - Open-source self-hosted email marketing, subscriber and list management, email campaigns and more

SendPortal includes subscriber and list management, email campaigns, message tracking, reports and multiple workspaces/domains in a modern, flexible and scalable application.

Mettle 1.2k Jan 4, 2023
Cross-language email validation. Backed by a database of over 38 000 throwable email domains.

Cross-language temporary (disposable/throwaway) email detection library. Covers 38038+ fake email providers.

Francois-Guillaume Ribreau 1.4k Jan 9, 2023
:envelope: E-Mail Address Validator (syntax, dns, trash, typo)

✉️ E-Mail Address Validator for PHP Warning The best way to validate an e-mail address is still to send a duplicate opt-in-mail, when the user clicks

Lars Moelleken 41 Dec 25, 2022
A Laravel package to check if you can send e-mail through a given mailserver in name of a given e-mail address

A Laravel package to check if you can send e-mail through a given mailserver in name of a given e-mail address Mail spf checker A Laravel package to c

Dieter Coopman 110 Dec 16, 2022
The classic email sending library for PHP

PHPMailer – A full-featured email creation and transfer class for PHP Features Probably the world's most popular code for sending email from PHP! Used

PHPMailer 19k Jan 1, 2023
PHP library for parsing plain text email content.

EmailReplyParser EmailReplyParser is a PHP library for parsing plain text email content, based on GitHub's email_reply_parser library written in Ruby.

William Durand 606 Dec 8, 2022
Send email across all platforms using one interface

Send email across all platforms using one interface. Table Of Content Requirements Installation Providers AmazonSES Mailgun Mailjet Mandrill Postmark

Omnimail 329 Dec 30, 2022
Small PHP library to valid email addresses using a number of methods.

Email Validator Small PHP library to valid email addresses using a number of methods. Features Validates email address Checks for example domains (e.g

James Jackson 154 Dec 31, 2022
Library for using online Email providers

Stampie Stampie have been moved to the "Flint" organization in order to get a better collaborative flow. Stampie is a simple API Wrapper for different

Henrik Bjørnskov 32 Oct 7, 2020
Library for using online Email providers

Stampie Stampie is a simple API Wrapper for different email providers such as Postmark and SendGrid. It is very easy to use and to integrate into your

Stampie 288 Dec 31, 2022
Mail sending module for Mezzio and Laminas MVC with support for file attachment and template email composition

This module provides an easy and flexible way to send emails from Mezzio and Laminas MVC applications (formerly known as Zend Expressive and Zend MVC). It allows you to pre-configure emails and transports, and then send those emails at runtime.

null 82 Jan 16, 2022
Omnisend: Ecommerce Email Marketing and SMS Platform

Omnisend Omnisend: Ecommerce Email Marketing and SMS Platform Version v1.x Support all PHP Version >=5.6 v2.x Support all PHP Version >=7.0 Installati

Hung Nguyen 3 Jan 6, 2022
Sending Email via Microsoft Exchange Web Services made Easy!

Send Mail via Exchange Web Services! Sending Email via Microsoft Exchange Web Services (EWS) made easy! Installation Install via Composer composer req

Raju Rayhan 19 Jul 19, 2022
Mailcoach is a self-hosted email list manager - in a modern jacket.

Welcome to Mailcoach Mailcoach is a self-hosted email list manager - in a modern jacket. It features: Subscribers and lists management Subscribe, doub

Spatie 3 Jan 31, 2022
An AngularJS / Laravel app - Keyword Based Email forwarder | read/write emails through IMAP

@MailTree Simple mail forwarder. Based on the specific email body/subject keywords forward mails to the list of predefined users. Install Imap Install

Dren Kajmakchi 4 Aug 21, 2018
EMAIL, PASSWORD AND USERNAME GENERATOR

Email-Generator EMAIL, PASSWORD AND USERNAME GENERATOR Install on desktop : Install XAMPP Added environment variable system path => C:\xampp\php downl

Alex 2 Jan 8, 2022
Fetch is a library for reading email and attachments, primarily using the POP and IMAP protocols

Fetch Fetch is a library for reading email and attachments, primarily using the POP and IMAP protocols. Installing N.b. A note on Ubuntu 14.04 (probab

Tedious Developments 501 Jan 4, 2023