<?php
function isValidEmail(string $email): bool {
$email = trim($email);
// RFC 5321 limits: local part 64 chars, total 254 chars.
if (strlen($email) > 254) return false;
$opts = defined('FILTER_FLAG_EMAIL_UNICODE')
? FILTER_FLAG_EMAIL_UNICODE
: 0;
return (bool)filter_var($email, FILTER_VALIDATE_EMAIL, $opts);
}
var_dump(isValidEmail('hello@example.com')); // true
var_dump(isValidEmail('user+tag@sub.example.org')); // true
var_dump(isValidEmail('not-an-email')); // false
Create a free account and build your private vault. Share publicly whenever you want.