Как определить типы файлов, не полагаясь на расширения
Определение того, является ли файл форматом mp3 или изображения, помимо проверки его расширения, является ценным задача по программированию. Вот комплексное решение, которое не зависит от расширений:
PHP >= 5.3:
$mimetype = finfo_fopen(fopen($filename, 'r'), FILEINFO_MIME_TYPE);
PHP
$mimetype = mime_content_type($filename);
Альтернативы :
Прокси-метод:
Для более общего подхода рассмотрите возможность включения этих функций в прокси-метод:
function getMimeType($filename)
{
$mimetype = false;
if (function_exists('finfo_fopen')) {
// open with FileInfo
} elseif (function_exists('getimagesize')) {
// open with GD
} elseif (function_exists('exif_imagetype')) {
// open with EXIF
} elseif (function_exists('mime_content_type')) {
$mimetype = mime_content_type($filename);
}
return $mimetype;
}
Используя этот прокси-метод, вы можете легко определить mime-тип файла на основе доступности различных функций в вашей системе.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3