ExportFormatEnum.php 964 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. <?php
  2. declare(strict_types=1);
  3. namespace App\Enum\Export;
  4. use MyCLabs\Enum\Enum;
  5. /**
  6. * Formats de sortie des fichiers exportés
  7. */
  8. class ExportFormatEnum extends Enum
  9. {
  10. private const PDF ='pdf';
  11. private const CSV ='csv';
  12. private const TXT = 'txt';
  13. private const XLSX = 'xlsx';
  14. private const XML = 'xml';
  15. /** @var array */
  16. protected static array $mimeType = [
  17. self::PDF => 'application/pdf',
  18. self::CSV => 'text/csv',
  19. self::TXT => 'text/plain',
  20. self::XLSX => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
  21. self::XML => 'application/xml'
  22. ];
  23. /**
  24. * @param string $formatShortName
  25. * @return string
  26. */
  27. public static function getMimeType($formatShortName)
  28. {
  29. if (!isset(static::$mimeType[$formatShortName])) {
  30. return "Unknown format ($formatShortName)";
  31. }
  32. return static::$mimeType[$formatShortName];
  33. }
  34. }