繁体   English   中英

二维数组Laravel的验证规则

[英]validation rule for 2d array laravel

我在视图刀片中有一些输入字段,例如名称

cat [1] [0],cat [1] [1],cat [2] [1]等。

现在,我想在服务器端编写一些验证规则,以便每个输入字段都不为空并且文本的最大长度为50。

我在编写2d数组的规则作为名称时遇到问题。 我在做什么如下。

    $InputsWithtwoDarrayName = $request->cat;
    $rules = [];
    foreach ($InputsWithtwoDarrayName as $firstKey => $InputsWithtwoDarrayName) 
     {
        foreach ($catQuestion as $secondkey => $qstion)
            $rules['cat.' . $firstKey . '.' . $secondkey] = 'required|max:' . 50;
    }

    $messages = [
        'required' => Lang::get('message.assessment.selfAssessment.selfconfirm.error.required'),
    ];
    $validator = Validator::make($InputsWithtwoDarrayName, $rules,$messages); 
    if ($validator->fails()) {
        return Redirect::back();
    }

现在我的问题是将2d数组作为名称编写规则的正确方法是什么?

您可以使用array_dot()

array_dot函数将多维数组展平为使用“点”符号表示深度的单级数组:

$array = array_dot(['foo' => ['bar' => 'baz']]);
// ['foo.bar' => 'baz'];

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM