Laravel 中的数组验证
在 Laravel 中处理数组数据时遇到验证问题。提交空的 POST 请求时,您预计验证会失败,但它返回 true。
解决方案
问题在于您如何验证数组。 Laravel 中的星号 (*) 符号验证数组中的各个值,而不是数组本身。要验证数组,请使用以下语法:
$validator = Validator::make($request->all(), [ "names" => "required|array|min:3", "names.*" => "required|string|distinct|min:3", ]);
解释
在此示例中:
使用此更新的验证逻辑,空 POST 请求将按预期失败。
Laravel 5.5 中的验证改进
从 Laravel 5.5 开始,您可以通过直接在 Request 对象上调用 validate() 方法来使用简化的语法进行数组验证:
$data = $request->validate([ "names" => "required|array|min:3", "names.*" => "required|string|distinct|min:3", ]);
以上是如何在 Laravel 中正确验证数组?的详细内容。更多信息请关注PHP中文网其他相关文章!