使用laravel写出电话号码,账号,密码,性别,年龄,身份号码,姓名,学校,专业。这些的表单验证代码
时间: 2023-07-16 15:16:52 浏览: 45
在 Laravel 中进行表单验证是非常简单的,可以通过 Laravel 自带的验证器类 `Validator` 来实现。下面是一个示例代码,可以验证电话号码、账号、密码、性别、年龄、身份号码、姓名、学校和专业:
```php
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Validator;
public function validateForm(Request $request)
{
$validator = Validator::make($request->all(), [
'phone' => 'required|regex:/^1[3456789]\d{9}$/',
'account' => 'required|alpha_dash|max:20',
'password' => 'required|min:6|max:20',
'gender' => 'required|in:male,female',
'age' => 'required|integer|min:1|max:120',
'id_number' => 'required|regex:/^[1-9]\d{5}(19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12][0-9]|3[01])\d{3}[0-9Xx]$/',
'name' => 'required|string|max:50',
'school' => 'required|string|max:100',
'major' => 'required|string|max:50',
]);
if ($validator->fails()) {
return redirect('/form')
->withErrors($validator)
->withInput();
}
// 如果验证通过,这里继续进行提交操作
}
```
上述代码中,我们使用了 `Validator::make()` 方法来创建一个验证器实例,传入参数为 `$request->all()`,即请求中的所有数据。然后,对每一个输入字段进行了验证规则的定义,如电话号码需要符合正则表达式 `/^1[3456789]\d{9}$/`,账号只能包含字母、数字、破折号和下划线,并且长度不能超过 20 个字符等。如果某个字段验证失败,就将错误信息加入到 `$validator` 实例中,并将用户输入的数据一起返回到表单页面,方便用户重新填写。最后,如果所有字段都验证通过,就可以继续进行提交操作了。