Вход Регистрация
Файл: vendor/laravel/framework/src/Illuminate/Foundation/Validation/ValidatesRequests.php
Строк: 94
<?php

namespace IlluminateFoundationValidation;

use 
IlluminateContractsValidationFactory;
use 
IlluminateFoundationPrecognition;
use 
IlluminateHttpRequest;
use 
IlluminateValidationValidationException;

trait 
ValidatesRequests
{
    
/**
     * Run the validation routine against the given validator.
     *
     * @param  IlluminateContractsValidationValidator|array  $validator
     * @param  IlluminateHttpRequest|null  $request
     * @return array
     *
     * @throws IlluminateValidationValidationException
     */
    
public function validateWith($validatorRequest $request null)
    {
        
$request $request ?: request();

        if (
is_array($validator)) {
            
$rules $request->isPrecognitive()
                ? 
$request->filterPrecognitiveRules($validator)
                : 
$validator;

            
$validator $this->getValidationFactory()->make($request->all(), $rules);
        } elseif (
$request->isPrecognitive()) {
            
$validator->setRules(
                
$request->filterPrecognitiveRules($validator->getRules())
            );
        }

        return 
tap($validator, function ($validator) use ($request) {
            if (
$request->isPrecognitive()) {
                
$validator->after(Precognition::afterValidationHook($request));
            }
        })->
validate();
    }

    
/**
     * Validate the given request with the given rules.
     *
     * @param  IlluminateHttpRequest  $request
     * @param  array  $rules
     * @param  array  $messages
     * @param  array  $customAttributes
     * @return array
     *
     * @throws IlluminateValidationValidationException
     */
    
public function validate(Request $request, array $rules,
                             array 
$messages = [], array $customAttributes = [])
    {
        
$rules $request->isPrecognitive()
            ? 
$request->filterPrecognitiveRules($rules)
            : 
$rules;

        
$validator $this->getValidationFactory()->make(
            
$request->all(), $rules$messages$customAttributes
        
);

        return 
tap($validator, function ($validator) use ($request) {
            if (
$request->isPrecognitive()) {
                
$validator->after(Precognition::afterValidationHook($request));
            }
        })->
validate();
    }

    
/**
     * Validate the given request with the given rules.
     *
     * @param  string  $errorBag
     * @param  IlluminateHttpRequest  $request
     * @param  array  $rules
     * @param  array  $messages
     * @param  array  $customAttributes
     * @return array
     *
     * @throws IlluminateValidationValidationException
     */
    
public function validateWithBag($errorBagRequest $request, array $rules,
                                    array 
$messages = [], array $customAttributes = [])
    {
        try {
            return 
$this->validate($request$rules$messages$customAttributes);
        } catch (
ValidationException $e) {
            
$e->errorBag $errorBag;

            throw 
$e;
        }
    }

    
/**
     * Get a validation factory instance.
     *
     * @return IlluminateContractsValidationFactory
     */
    
protected function getValidationFactory()
    {
        return 
app(Factory::class);
    }
}
Онлайн: 1
Реклама