Laravel validator with a wildcard(带有通配符的 Laravel 验证器)
问题描述
我想制作一个 Laravel 验证器来验证数组内的未命名数组 ( 0,1,2,3 ) 内的字段
i want to make a laravel validator that validates the the fields inside an un-named array ( 0,1,2,3 ) that is inside an array
所以我的数组就像
array [ //the form data
"items" => array:2 [ //the main array i want to validate
0 => array:2 [ // the inner array that i want to validate its data
"id" => "1"
"quantity" => "1000"
]
1 => array:2 [
"id" => "1"
"quantity" => "1000"
]
// other fields of the form,
]
]
所以我想要的是像
$validator = Validator::make($request->all(), [
'items.*.id' => 'required' //notice the star *
]);
推荐答案
Laravel 5.2
现在支持问题中的语法
http://laravel.com/docs/master/validation#validating-arrays
Laravel 5.1
首先使用您的所有其他规则创建验证器.对项目使用 array
规则
First create the validator with all of your other rules. Use the array
rule for items
$validator = Validator::make($request->all(), [
'items' => 'array',
// your other rules here
]);
然后使用 Validator each
方法将一组规则应用于 items 数组中的每个项目.
Then use the Validator each
method to apply a set of rules to every item in the items array.
$validator->each('items', [
'id' => 'required',
'quantity' => 'min:0',
]);
这将自动为您设置这些规则...
This will automatically set these rules for you...
items.*.id => required
items.*.quantity => min:0
https://github.com/laravel/framework/blob/5.1/src/Illuminate/Validation/Validator.php#L261
这篇关于带有通配符的 Laravel 验证器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:带有通配符的 Laravel 验证器
基础教程推荐
- PHP 守护进程/worker 环境 2022-01-01
- 使用 PDO 转义列名 2021-01-01
- 在 CakePHP 2.0 中使用 Html Helper 时未定义的变量 2021-01-01
- 在 yii2 中迁移时出现异常“找不到驱动程序" 2022-01-01
- 如何在 Symfony 和 Doctrine 中实现多对多和一对多? 2022-01-01
- Doctrine 2 - 在多对多关系中记录更改 2022-01-01
- 如何在 XAMPP 上启用 mysqli? 2021-01-01
- phpmyadmin 错误“#1062 - 密钥 1 的重复条目‘1’" 2022-01-01
- 找不到类“AppHttpControllersDB",我也无法使用新模型 2022-01-01
- HTTP 与 FTP 上传 2021-01-01