diff --git a/src/Illuminate/Validation/ValidationRuleParser.php b/src/Illuminate/Validation/ValidationRuleParser.php index 0119b6d3a803..2d8f5026f091 100644 --- a/src/Illuminate/Validation/ValidationRuleParser.php +++ b/src/Illuminate/Validation/ValidationRuleParser.php @@ -9,6 +9,7 @@ use Illuminate\Support\Arr; use Illuminate\Support\Collection; use Illuminate\Support\Str; +use Illuminate\Validation\Rules\Date; use Illuminate\Validation\Rules\Exists; use Illuminate\Validation\Rules\Unique; @@ -95,11 +96,17 @@ protected function explodeExplicitRule($rule, $attribute) return Arr::wrap($this->prepareRule($rule, $attribute)); } - return array_map( - [$this, 'prepareRule'], - $rule, - array_fill((int) array_key_first($rule), count($rule), $attribute) - ); + $rules = []; + + foreach ($rule as $value) { + if ($value instanceof Date) { + $rules = array_merge($rules, explode('|', (string) $value)); + } else { + $rules[] = $this->prepareRule($value, $attribute); + } + } + + return $rules; } /**