Методы проверки файлов в Laravel с примерами кода

В Laravel вы можете выполнять проверку файлов, используя различные методы. Вот некоторые часто используемые методы с примерами кода:

  1. Использование метода validateв контроллере:

    public function store(Request $request)
    {
    $request->validate([
        'file' => 'required|mimes:pdf,doc,docx|max:2048',
    ]);
    // Code to handle the file upload
    }

    В этом примере метод validateвызывается для объекта $request, и поле fileпроверяется. Он проверяет наличие поля, допускает только типы файлов PDF, DOC и DOCX и ограничивает размер файла до 2048 КБ.

  2. Использование проверки запроса формы:
    Создайте класс запроса формы с помощью команды php artisan make:request:

    php artisan make:request FileValidationRequest

    Внутри метода rulesсозданного класса FileValidationRequestопределите правила проверки:

    public function rules()
    {
    return [
        'file' => 'required|mimes:pdf,doc,docx|max:2048',
    ];
    }

    Затем в контроллере введите подсказку класса запроса формы:

    public function store(FileValidationRequest $request)
    {
    // Validation passed, handle the file upload
    }

    Этот метод выделяет логику проверки в отдельный класс, сохраняя контроллер чистым и организованным.

  3. Использование фасада Validator:

    use Illuminate\Support\Facades\Validator;
    public function store(Request $request)
    {
    $validator = Validator::make($request->all(), [
        'file' => 'required|mimes:pdf,doc,docx|max:2048',
    ]);
    if ($validator->fails()) {
        // Handle validation failure
    }
    // Code to handle the file upload
    }

    Здесь фасад Validatorиспользуется для ручного создания экземпляра валидатора и определения правил проверки. Если проверка не удалась, вы можете обработать ее соответствующим образом.