Как узнать тип файла

G
На сайте с 15.08.2009
Offline
38
887

Есть например в папке файл file.gif

Как узнать его тип? Может как-то по другому назывется, вобщем

для гифа тип будет image/gif

Для jpg - image/jpeg или image/pjpeg

Как эту величину узнать?

Куплю ссылки, размещу статьи на сайтах агро и смежных с агробизнесом тематик.
[Удален]
#1
gazmyas:
Как узнать тип файла
gazmyas:
Как эту величину узнать?

Тип или величину?

G
На сайте с 15.08.2009
Offline
38
#2

Тип, наверное

[Удален]
#3
gazmyas:
Тип, наверное

Вас интересует FTP или HTTP?

G
На сайте с 15.08.2009
Offline
38
#4

Может не так сформулировал задачу..

Есть на сервере файл Нужно узнать его mime тип. Так вроде это называется..

Mihajlo
На сайте с 30.10.2006
Offline
156
#5

mime_content_type($filename)

G
На сайте с 15.08.2009
Offline
38
#6

Для использовании этой функции помоему нужно подключать какую-то библиотеку..

Нашел простое решение, может кому подойдет.. :


function mime_content_type2($file, $method = 0)
{
if ($method == 0)
{
ob_start();
system('/usr/bin/file -i -b ' . realpath($file));
$type = ob_get_clean();

$parts = explode(';', $type);

return trim($parts[0]);
}
else if ($method == 1)
{
// another method here
}
}
Mihajlo
На сайте с 30.10.2006
Offline
156
#7

лучше подключить библиотеку, чем разрешать из php-скриата запуск функции system :)

T.R.O.N
На сайте с 18.05.2004
Offline
314
#8

gazmyas,

это называется MIME типом

вот пример таблицы.. http://www.gcmsite.ru/?pg=art&id=php-header-mime-types

Зачем Вам узнавать? Если файлы на сервере, то просто смотрите расширение. Ведь сервер, отдавая файл, указывает mime (content-type) исходя из расширения файла.

Есть способы определения типа файла, без анализа расширения, но это достаточно трудоемко. Ведь не все форматы имеют указатель типа в начале файла... или содержат в заголовке только часть информации

От воздержания пока никто не умер. Хотя никто и не родился! Prototype.js был написан теми, кто не знает JavaScript, для тех, кто не знает JavaScript (Richard Cornford)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий