验证请求中的二维数组

时间:2019-09-05 20:05:48

标签: php arrays laravel validation laravel-5.8

这是我的要求:

name: max
phone: 06132219899
mobile: 07113105802
bank[0][card]: 11
bank[0][acc]: 22
bank[1][card]: 44
bank[1][acc]: 44

我想验证bank中的数据。我尝试过:

'bank'=>'required|array' , 
'bank.card'=>'required|digits:11' ,
'bank.acc'=>'required|digits:24' 

但这不起作用,我得到:

  

x字段为必填。

1 个答案:

答案 0 :(得分:0)

验证数组时,您需要指定一个数组验证规则的索引,该索引可以使用特定数字(通过循环输入来动态构建规则)或使用通配符*

$rules = [
  "bank" => "required|array",
  "bank.*.card" => "required|digits:11",
  "bank.*.acc" => "required|digits:24"
];

注意:如果循环播放,您将有bank.0.cardbank.1.card等。这样做的唯一真正好处是更容易在前端引用错误消息。