过滤器验证电子邮件功能的最大长度


Max length in filter validate email function

我正在使用PHP函数FILTER_VALIDATE_EMAIL来验证用户输入的电子邮件地址。我的代码如下。

private function _isValidEmail($email){
  if(!filter_var($email, FILTER_VALIDATE_EMAIL)) return false;
  else return true;
}

如果我尝试输入等于 254 个字符的电子邮件地址,服务器将停止响应,并且我的浏览器 (chrome) 显示此网页不可用。我正在使用 WAMP 服务器 2.2 在本地计算机上对此进行测试。网站中的所有其他页面都在工作。但是小于 254 的电子邮件似乎工作正常。

我的默认字符集设置为 UTF-8,这是否有效果或是否有其他错误。

有点题外话,但你可以像这样优化你的函数:

private function _isValidEmail($email) {
    return (bool)filter_var($email, FILTER_VALIDATE_EMAIL);
}