| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Графика > Как определить является ли файл картинкой |
| Автор: NLspieler 18.8.2011, 07:44 |
| Как определить является ли файл картинкой, без модуля filinfo? |
| Автор: ayax2005 18.8.2011, 08:20 |
| mime_content_type |
| Автор: NLspieler 18.8.2011, 15:25 |
Fatal error: Call to undefined function mime_content_type() in Эта функция относится к той же библиотеке, что и fileinfo. Возможно ли как то по-другому решить задачу, например при помощи библиотеки gd? |
| Автор: ayax2005 18.8.2011, 15:29 |
| Можно читать бинарно файл - в начале файла всегда содержится информация о типе. А проще всего - выдрите из исходника mime_content_type и определите где-нибудь у себя http://pear.php.net/reference/PHP_Compat-1.6.0a1/__filesource/fsource_PHP_Compat__PHP_Compat-1.6.0a1CompatFunctionmime_content_type.php.html |
| Автор: NLspieler 18.8.2011, 18:06 |
Не сработало, так как не хватает некой `file` команды, поэтому ответ у функции всегда application/octet-stream Решил задачу при помощи функции http://www.php.net/manual/en/function.getimagesize.php. Если файл - не картинка, то функция возвращает false. |
| Автор: skyboy 19.8.2011, 00:11 |
| что там за ОС? Линукс? Возможность запуска команд оболочки(http://php.net/system(), backtick operator) имеется? тогда можно выполнить http://linux.about.com/library/cmd/blcmdl1_file.htm?rd=1, который, собственно, и используют в корыстных целях модули fileinfo и mime_content_type. |