Я видел, что некоторые серверы не добавляют mime-тип image / png в переменную $ _FILES ... есть немного более тяжелый процесс CPU:
if (@imagecreatefrompng($_FILES["file"]["tmp_name"])
Производительность здесь будет немного снижена, так как вы используете библиотеку GD для открытия холста изображения
Если проблема связана с производительностью или отсутствием библиотеки GD, просто проверьте расширение:
if (strtolower(end(explode('.',$_FILES["file"]["name"])) == 'png')
Примечание
Если вы хотите использовать функцию imagecreatefrompng , рекомендуется убедиться, что GD установлен: if (function_exists('imagecreatefrompng'))
Важно
Если вы осторожны с использованием памяти (что и должно быть), сделайте это
if ($image = @imagecreatefrompng($_FILES["file"]["tmp_name"]) {
// Do something
imagedestroy($image);
}