Met*_*ani 6 php arrays validation laravel laravel-5.2
所以,好吧我从验证文档中尝试了很多规则,但都给了我同样的错误说法
数组到字符串转换
这是我添加数组的方式:
$this->validate($request,[
'employee' => 'required|in:'.$employee->pluck('id')->toArray(),
],[
'employee.in' => 'employee does not exists',
]);
Run Code Online (Sandbox Code Playgroud)
有关如何实现这一点的任何提示?
我创建了一个自定义验证器,但仍然传递数组似乎是不可能的
Ohg*_*why 16
将数组作为字符串内爆并将其连接到逗号上.
'employee' => 'required|in:'.$employee->implode('id', ', '),
Run Code Online (Sandbox Code Playgroud)
这将生成验证器在进行in比较时期望的正确逗号分隔字符串.
更新:现在,您可以使用Rule类,而不是按照正确答案中的说明自行内插值。只需做:
['someProperty' => ['required', Rule::in(['needed', 'stuff'])]];
Run Code Online (Sandbox Code Playgroud)
如文档的“验证数组”部分所述:https : //laravel.com/docs/5.6/validation#validating-arrays