gpt4 book ai didi

arrays - 数组的 Laravel 验证

转载 作者:行者123 更新时间:2023-12-02 09:12:19 26 4
gpt4 key购买 nike

我有这个要求:

GET http://example.com/test?q[]=1&q[]=2&q[]=3

我有这条路线:

Route::get('test', function(Request $req) {
$req->validate(['q' => 'array']);
});

我应该如何使用 Laravel 验证器将其他验证规则添加到此数组的每个元素?例如,我想检查每个 q 值是否至少为 2。

感谢您的帮助。

最佳答案

查看有关 validating arrays 的文档.

$validator = Validator::make($request->all(), [
'person.*.email' => 'email|unique:users',
'person.*.first_name' => 'required_with:person.*.last_name',
]);

您也可以在 Controller 中使用 Request 对象执行此操作,documentation about validation logic .

public function store(Request $request)
{
$validatedData = $request->validate([
'title' => 'required|unique:posts|max:255',
'body' => 'required',
]);

// The blog post is valid...
}

当您有很多验证规则并希望在应用程序中分离逻辑时,还有第三种选择。看看Form Requests

1) 创建一个表单请求类

php artisan make:request StoreBlogPost

2) 将规则添加到在 app/Http/Requests 目录中创建的类。

public function rules()
{
return [
'title' => 'required|unique:posts|max:255',
'body' => 'required',
];
}

3) 在您的 Controller 中检索请求,它已经过验证。

public function store(StoreBlogPost $request)
{
// The incoming request is valid...

// Retrieve the validated input data...
$validated = $request->validated();
}

关于arrays - 数组的 Laravel 验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50832109/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com