Laravel 4 正则表达式电子邮件验证
Laravel 4 regex email validation
我正在尝试在我的用户模型中添加验证,以使用正则表达式验证电子邮件。
但是,它在第一个撇号处吐出一个假人。
'email' => 'required|regex:/^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/',
您是否尝试过 'email' 验证规则?
'email' => 'required|email|unique:users,email'
正如 this question on SO 的回答所述,没有简单的正则表达式来验证电子邮件地址。使用您的 RegEx 可能会捕获有效地址(尽管这只是我的猜测)。使用 email
-validation-rule 将是我的第一选择。
但你是对的,这首先只是服务器端,如果你忽略重定向用户返回输入和错误消息..
在客户端,您会有一些选择。第一个是简单地依赖浏览器验证的构建,通过将相应的输入字段声明为电子邮件地址,无论如何你都应该这样做:
{{ Form::email($name, $value = null, $attributes = array()) }}
另一种更高级的方法是创建某种帮助程序来检查通过 Ajax 输入的输入,使用相同的验证规则并返回错误消息或其他内容。相似的。例如,这可能是通往您的模型资源的附加路线。这样,您将保持稳定和一致。
我正在尝试在我的用户模型中添加验证,以使用正则表达式验证电子邮件。
但是,它在第一个撇号处吐出一个假人。
'email' => 'required|regex:/^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/',
您是否尝试过 'email' 验证规则?
'email' => 'required|email|unique:users,email'
正如 this question on SO 的回答所述,没有简单的正则表达式来验证电子邮件地址。使用您的 RegEx 可能会捕获有效地址(尽管这只是我的猜测)。使用 email
-validation-rule 将是我的第一选择。
但你是对的,这首先只是服务器端,如果你忽略重定向用户返回输入和错误消息..
在客户端,您会有一些选择。第一个是简单地依赖浏览器验证的构建,通过将相应的输入字段声明为电子邮件地址,无论如何你都应该这样做:
{{ Form::email($name, $value = null, $attributes = array()) }}
另一种更高级的方法是创建某种帮助程序来检查通过 Ajax 输入的输入,使用相同的验证规则并返回错误消息或其他内容。相似的。例如,这可能是通往您的模型资源的附加路线。这样,您将保持稳定和一致。