В Laravel вы можете выполнять проверку файлов, используя различные методы. Вот некоторые часто используемые методы с примерами кода:
-
Использование метода
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 КБ. -
Использование проверки запроса формы:
Создайте класс запроса формы с помощью команды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 }
Этот метод выделяет логику проверки в отдельный класс, сохраняя контроллер чистым и организованным.
-
Использование фасада
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
используется для ручного создания экземпляра валидатора и определения правил проверки. Если проверка не удалась, вы можете обработать ее соответствующим образом.