Определение MIME-типа файла с PHP тривиально -просто используйте пакет PEAR MIME _Type , пакет PHP fileinfo или вызовите file -i
на машине Unix. Это очень хорошо работает с бинарными файлами и всеми остальными файлами, имеющими какие-то «магические байты», с помощью которых их можно легко обнаружить.
Что мне не удается, так это определение правильного типа MIME для простых текстовых файлов:
Все они идентифицируются как "text/plain", что правильно, но слишком неконкретно для меня. Мне нужен реальный тип, даже если анализ содержимого файла потребует некоторого времени.
Итак, мой вопрос :Какие существуют решения для определения MIME-типа таких простых текстовых файлов? Любые библиотеки? Фрагменты кода?
Обратите внимание, что у меня нет ни имени файла, ни расширения файла, но у меня есть содержимое файла.
Если бы я использовал ruby, я мог бы интегрировать лингвист github . Программа Ohloh ohcount написана на C, но имеет инструмент командной строки для определения типа:ohcount -d $file
Правильно определяет файлы xml и php, все остальные нет.
Обнаруживает xml и html, все остальные тестовые файлы были видны только как text/plain
.