MimeTypeGuesser
class MimeTypeGuesser implements MimeTypeGuesserInterface
Одиночный угадыватель типов MIME.
По умолчанию, все угадыватели типов MIME, предоставляемые фреймворком, устанавливаются (если они доступны в текущей ОС/PHP-настройках).
Вы можете зарегистрировать пользовательские угадыватели, вызвав метод register() на экземпляре одиночки. Пользовательские угадыватели всегда вызываются до любых стандартных.
$guesser = MimeTypeGuesser::getInstance();
$guesser->register(new MyCustomMimeTypeGuesser());
Если вы хотите изменить порядок стандартных угадывателей, просто повторно зарегистрируйте предпочитаемый вами угадыватель как пользовательский. Последний зарегистрированный угадыватель имеет приоритет над ранее зарегистрированными.
Перерегистрация встроенного угадывателя также позволяет настроить его:
$guesser = MimeTypeGuesser::getInstance();
$guesser->register(new FileinfoMimeTypeGuesser('/path/to/magic/file'));
Методы
| static MimeTypeGuesser | getInstance() Возвращает экземпляр одиночки. | |
| static | reset() Сбрасывает экземпляр одиночки. | |
| register(MimeTypeGuesserInterface $guesser) Регистрирует новый угадыватель типов MIME. | ||
| string | guess(string $path) Попытка угадать тип MIME заданного файла. |
Подробности
static MimeTypeGuesser getInstance()
Возвращает экземпляр одиночки.
Возвращаемое значение
| MimeTypeGuesser |
static reset()
Сбрасывает экземпляр одиночки.
register(MimeTypeGuesserInterface $guesser)
Регистрирует новый угадыватель типов MIME.
При угадывании этот угадыватель имеет приоритет над ранее зарегистрированными.
Параметры
| MimeTypeGuesserInterface | $guesser |
string guess(string $path)
Попытка угадать тип MIME заданного файла.
Файл передается каждому зарегистрированному угадывателю типов MIME в обратном порядке их регистрации (последний зарегистрированный запрашивается первым). Как только угадыватель возвращает значение, отличное от NULL, этот метод завершается и возвращает это значение.
Параметры
| string | $path | Путь к файлу |
Возвращаемое значение
| string | Тип MIME или NULL, если тип не удалось угадать |
Исключения
| LogicException | |
| FileNotFoundException | |
| AccessDeniedException |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/2.7/Symfony/Component/HttpFoundation/File/MimeType/MimeTypeGuesser.html