Этот вопрос закрыт для ответов, так как повторяет вопрос Как проверить, что загружаемый файл является изображением?

Как проверять изображения в PHP?

Массив $_FILES содержит:
array(1) {
  ["uploadfile"]=>
  array(5) {
    ["name"]=>
    string(9) "icons.png"
    ["type"]=>
    string(9) "image/png"
    ["tmp_name"]=>
    string(39) "/var/www/user/data/mod-tmp/HUFGGSHGDSF"
    ["error"]=>
    int(0)
    ["size"]=>
    int(6680)
  }
}

1) Проверяем расширения файлов в name на соответствие расширений изображений, но это ненадёжно вроде как.
2) Проверка с помощью mime_content_type. В эту функцию тоже надо name подавать в данном случае? Так она тоже всегда выдаст image/gif если в name можно подсунуть неистинное расширение? К тому же у меня в элементе массива type уже есть image/png этого недостаточно?
3) Что ещё необходимо добавить сегодня?
  • Вопрос задан
  • 1345 просмотров
Решения вопроса 2
@heahoh
Full stackoverflow developer
PHP Uploading files - image only checking, хотя в оф.доке говорят, что использовать getimagesize для проверки - плохая идея:
Caution
This function expects filename to be a valid image file. If a non-image file is supplied, it may be incorrectly detected as an image and the function will return successfully, but the array may contain nonsensical values.
Do not use getimagesize() to check that a given file is a valid image. Use a purpose-built solution such as the Fileinfo extension instead.
Ответ написан
Ваш ответ на вопрос

Вопрос закрыт для ответов и комментариев

Потому что уже есть похожий вопрос.
Похожие вопросы