Как проверить загруженный файл по имени файла? - PullRequest
0 голосов
/ 08 июля 2019

У меня есть файл, который выходит из класса Request для настройки моего правила проверки, в котором я проверил поле типа файла с максимальным размером и определенной длиной для имени файла.Чтобы упростить попытку с

php artisan tinker

Вы можете воспроизвести ошибку:

Validator::make(['file' => Illuminate\Http\UploadedFile::fake()
         ->create('page.pdf')],['file' => 'regex:/^.*$/'])->fails();

С помощью этого кода динамически с помощью фейера генерировать файл для загрузки и дать ему конкретное имя, применитьпроверки и попробуйте проверить, не удалось или нет.

Используемое регулярное выражение указывает, что имя может быть любым символом с открытым измерением без ограничений.Это должно вернуть false, поскольку оно не должно завершиться ошибкой.Однако это не удается.

Чтобы узнать, в порядке ли я в отношении регулярного выражения, мы можем использовать:

preg_match('/^.*$/', 'page.pdf');

В моем случае он возвращает 1, указывая, что он нашел соответствиепотому что в документации указано, что 1 означает, что найдено совпадение, 0 - нет, и false - что произошла ошибка.

Так что же я могу сделать неправильно, если использовать regex для проверки UploadedFile с Laravel вмои юнит-тесты?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...