Я использую конструктор форм от Symfony, и класс, который я создал для формы, выглядит следующим образом:

use Symfony\Component\HttpFoundation\File\File;
use Symfony\Component\Validator\Constraints as Assert;

class Upload

{

    /**
     * @Assert\File(
     *     maxSize = "4000k",
     *     mimeTypes = {"text/plain", "text/xml", "application/xml", "text/csv", 
     *                  "application/EDI-consent", "application/EDIFACT", "application/EDI-X12"
     *                  "application/vnd.mseq", "application/json-seq", 
     *                  "application/vnd.sealed-xls", 
     *                  "application/pdf", "application/x-pdf",
     *                  "application/zip"},
     *     mimeTypesMessage = "Please upload a valid format file"
     *     )
     * @var file
     */
     protected $file;

     ...

Мне нужно принять следующие расширения: 'txt, dat, xml, csv, edi, seq, xls, pdf, zip'

Достаточно этого? Осталось что-нибудь добавить? Я что-то не так?

Symfony Docs рекомендует получать результаты отсюда:

https://www.iana.org/assignments/media-types/media-types.xhtml

0
Ricard Espinàs Llovet 29 Май 2018 в 17:52

1 ответ

Лучший ответ

На мой взгляд, он должен работать правильно. Возможно, вам следует добавить application / octet-stream и zz-application / zz-winassoc-dat , чтобы также соответствовать расширение файла dat. И ... протестируйте свой код с разными файлами, чтобы убедиться, что он работает.

1
Franck Gamess 30 Май 2018 в 05:53