Validating Email Addresses in PHP
Validation Process
The email validation process consists of two main steps:
1. Sanitizing the Email Address
// Convert to lowercase
$emailAddress = strtolower($emailAddress);
// Remove bad characters from the email
$sanitizedEmail = filter_var($emailAddress, FILTER_SANITIZE_EMAIL);
2. Validating the Email Address
// Validate the email address
$isValid = filter_var($emailAddress, FILTER_VALIDATE_EMAIL);
Complete Validation Function
Here’s a complete function that combines both steps:
|
|
Special Considerations
Internationalized Domain Names (IDN)
For email addresses containing Internationalized Domain Names (IDN), you need to convert it to punycode before validating the email address. This ensures proper handling of non-ASCII characters in domain names.
|
|