要求是,必须包含字母和数字。
比如,纯数字就不可以。
用laravel自带的验证方法,如何实现?
用这个正则就可以,已测,[a-zA-Z]+([A-Za-z0-9])*
实现效果,比如在注册用户名的时候:
55555 不通过
8754xcc 不通过
hhgdG55 通过
hhgdG55? 不通过
ggh hhd 不通过
带有中文 不通过
貌似只能用正则,laravel没有提供相应的函数支持(形如alpha_num的函数)
你需要一份laravel文档:百度云,文档下载之后,请查看【目录】【服务】【服务——验证】,或【搜索】“Validator”。
你应该还没看到Laravel5文档的Validation部分~你可以写一个Request用来验证用户名
可以自定义验证规则
$form_data = [
"product_name" => $request->get('product_name'),
];
$rules = [
"product_name" => 'required'
];
$messages = [
'required' => ' :attribute 字段必须填写.',
];
$validate = Validator::make($form_data, $rules,$messages);
if ($validate ->fails()){
return redirect('admin/addProduct')->withErrors($validate)->withInput();
}
不知道能不能帮助到你
//获取表单的值
$username = $request->input('username');
$password = $request->input('password');
//登录表单验证
$validator = Validator::make($request->all(), [
'username' => 'required|alpha_num|regex:/^(?!([A-Za-z]+|d\d+)$)[A-Za-z\d]$/', //只允许数字和字母
]);
//表单验证失败提示
if ($validator->fails()) {
//此处省略。。。
}
未测试。