Laravel验证电子邮件地址

时间:2019-11-06 08:02:51

标签: laravel validation email

我已经在laravel申请表中创建了一个接受电子邮件地址的编辑表。

我在服务器端使用过Laravel验证。

当我通过不带@的电子邮件时,它可以正确验证电子邮件地址。

但是问题是当我从电子邮件地址中删除.(点)时,它接受了它作为有效的电子邮件地址。

请提供建议,为什么会这样。

5 个答案:

答案 0 :(得分:5)

使用Laravel 7:您可以使用

'email' => 'email:rfc,dns'

答案 1 :(得分:4)

您可以轻松地做到:

$validator = Validator::make($request->all(), [
        'Email'=>'required|email'
    ]);

答案 2 :(得分:0)

尝试一下,我改变答案

$this->validate($request, [            
  'email' => 'required|regex:/(.+)@(.+)\.(.+)/i',
]);

答案 3 :(得分:0)

不是laravel问题。从技术上讲,这是一个有效的电子邮件地址。

请注意,如果您告诉浏览器验证电子邮件地址,则该电子邮件地址也会通过。

但是您可以将这些软件包用于验证电子邮件

https://github.com/egulias/EmailValidator

  

首先,还要检查以下内容:https://laravel.com/docs/6.x/validation#rule-email

或者

使用checkdnsrr函数

<?php

$email = 'email@gmail.com';
list($username, $domain) = explode('@', $email);

if (checkdnsrr($domain, 'MX')) {
  echo "verified";
} else {
  echo "failed";
}

答案 4 :(得分:0)

laravel emaill验证和独特的电子邮件插入数据库用于代码

'email_address' => 'required|email|unique:customers,email_address'