验证数组的元素

时间:2015-01-15 11:04:46

标签: laravel laravel-4 laravel-validation

我有一个传递给控制器​​的元素输入数组。到目前为止,我已经检查过数据是否存在,是"数组"类型并且至少有1个元素。

$validator = Validator::make($data, [ 'option' => 'required|array|min:1' ]);

但现在我想确保数组中的所有元素都不是emtpy(例如字符串""或空格" "。我无法预测数组中有多少元素会有。

我怎么能实现这个目标?

1 个答案:

答案 0 :(得分:0)

您可以使用自定义验证规则Here are the docs

这样的事情:

Validator::extend('array_not_whitespace', function($attribute, $value, $parameters)
{
    foreach($value as $entry)
    {
        if (strlen(trim($entry)) == 0)
           return false;
    }
    return true;
});

<强>与

$validator = Validator::make($data, [ 'option' => 'required|array_not_whitespace|min:1' ]);