Каков наилучший способ определить, является ли файл изображением в PHP? - PullRequest
2 голосов
/ 06 декабря 2011

У меня есть сервер, на который люди могут загружать файлы.Проблема в том, что некоторые имена файлов искажены (не имеют расширения), и поэтому я не могу сразу определить тип файла.Этот вопрос состоит из двух частей: для файлов, которые имеют имена файлов, каков наилучший способ определить, является ли это изображение?(Просто большой длинный список if / else if?) Во-вторых, как определить, являются ли они изображениями для файлов, которые не имеют расширений?

Ответы [ 12 ]

0 голосов
/ 06 декабря 2011

Вы можете использовать расширение Fileinfo: http://www.php.net/manual/en/function.finfo-file.php

finfo_file () использует магические байты и не требует загрузки всего изображения в память.В результате получается строка с соответствующим типом MIME, например:

  • text / html
  • image / gif
  • application / vnd.ms-excel
0 голосов
/ 06 декабря 2011

Первый вопрос: расширение известно, вы можете использовать функцию PHP in_array() Документация

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...