Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Php Email Validator Laravel Package

harungecit/php-email-validator

A lightweight PHP email validator that checks addresses for correct syntax and common formatting rules, helping you reject invalid input in forms, signups, and APIs. Install via Composer and drop it into any PHP project or framework.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit: This package is a strong fit for Laravel email-capture boundaries: registration, invitations, contact forms, password-reset entry points, and marketing/CRM ingestion. v3.2.0 materially improves validation quality with 136,577 disposable domains (up from 8,948), false-positive filtering against public suffixes, Tranco top-100k domains, typos, and allowlisted subdomains. The Laravel integration surface is practical for a TPM: rule objects, Blade directive, Artisan commands, scheduled sync, Laravel Boost guidelines, and Laravel 13 support. Explainable detection (checkDisposable() returning matched domain, source, and subdomain match) is especially valuable for support and policy tuning.

Integration feasibility: High. The release is backward compatible with 3.x and the 2.x API, so adoption can be incremental. Laravel teams can validate at request boundaries, use CLI commands for audits/backfills, and schedule sync to keep lists current between releases. The framework-agnostic CLI (vendor/bin/email-validator check|validate|sync|stats) also supports batch checks and operational verification.

Technical risk: The main risk is not integration effort but validation-policy behavior change. The list is ~15× larger, so false positives may surface even with the new build protections. Upgrade notes require explicit review: custom_blocklist / addToBlocklist() entries now take precedence over the bundled allowlist; smtp.from_domain now reads EMAIL_VALIDATOR_SMTP_FROM_DOMAIN; and custom typo mappings are additive to built-ins. Runtime sync introduces a remote-data dependency, and the OPcache-compiled index assumes production OPcache is correctly configured.

Key questions: Which Laravel flows will use the rule first? Do we have a support-owned allowlist exception process? Which custom blocklist entries may now override bundled allowlist entries? Is OPcache enabled and monitored in every environment? How often will scheduled sync run, and who owns sync failure alerts? Are we using smtp.from_domain, and has the new env var been reflected in deployment config? Are custom typo mappings duplicated now that they are additive?

Integration Approach

Stack fit: Use the package as the standard Laravel validation layer for disposable/spoofed email checks, with CLI commands for batch audits and scheduled sync for list currency. If the organization has Symfony or other PHP services, the broader v3.2.0 framework integrations reduce inconsistency across stacks.

Migration path: Treat this as a dependency upgrade plus policy review. Upgrade in a branch, run the existing test suite, review all custom block/allow lists, update Laravel env/config references for EMAIL_VALIDATOR_SMTP_FROM_DOMAIN, and test representative legitimate and disposable domains before production. Because behavior is backward compatible at the API level, rollout can be staged by route or form.

Compatibility: Strong for Laravel 13 and backward compatible with 3.x/2.x APIs. Confirm the application’s PHP/runtime and OPcache posture. The package also adds Symfony 8 support and framework-agnostic CLI behavior, which helps if email validation policy must be shared across services.

Sequencing: 1) Inventory all email-capture and validation points; 2) upgrade the package in a staging branch; 3) audit custom blocklists, allowlists, and typo mappings; 4) enable the Laravel rule on a pilot flow; 5) enable spoof/homograph checks where appropriate; 6) schedule runtime sync and test failure handling; 7) add stats/support visibility; 8) roll out to remaining flows with a rollback path.

Operational Impact

Maintenance: Expect daily list rebuilds upstream and weekly patch releases, with runtime sync covering gaps between releases. The sync path is designed for operations: append-only by default, atomic locked writes, rejection of HTML/empty responses, and allowlisted domains never written. The OPcache-compiled index is a major operational benefit because the full list can load without per-request memory cost, but production OPcache must be verified.

Support: Explainable detection is the key support enabler: agents can see the matched domain, source, and whether it matched via subdomain. getListStatistics() and the CLI stats command support audits. TPM should define an exception workflow: users or business owners report false positives, support adds them to lists.custom_allowlist, and the team reports upstream where appropriate.

Scaling: The larger list is acceptable if OPcache is enabled and sync is scheduled responsibly. Monitor synced-list size and behavior over time, especially with append-only sync. block_subdomains should be enabled deliberately because it can broaden blocking. Use CLI checks for batch ingestion and backfills rather than ad hoc validation code.

Failure modes: Primary risks are false positives from the larger dataset, stale lists if sync fails silently, malformed sync payloads, unexpected custom blocklist precedence, and environment/config drift around EMAIL_VALIDATOR_SMTP_FROM_DOMAIN. Subdomain blocking and custom typo mappings can also create surprising outcomes if not tested. Establish alerts for sync failures and a fast allowlist override path.

Ramp-up: Low for Laravel developers because the package exposes familiar rule objects, Blade directives, Artisan commands, and Laravel Boost guidelines. TPM should still fund a short enablement pass for support and operations: false-positive triage, allowlist ownership, sync monitoring, and the upgrade behavior changes. A pilot on one high-volume form is the right first milestone.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource
noith/settings
kda/laravel-package
kda/filament-dynamic-navigation
bypersoft/signbox
pairus/product-data
fayne/laravel-filament-cms-core