阻止上载在PHP中使用png或jpg重命名的gif图像
我有一个上传系统,用户只能上传png和jpg图像,但是,如果用户将gif图像重命名为.png,例如,系统正常上传gif图像,那么,如何阻止gif图像和其他非png或jpg的扩展?我的代码:阻止上载在PHP中使用png或jpg重命名的gif图像,php,image,Php,Image,我有一个上传系统,用户只能上传png和jpg图像,但是,如果用户将gif图像重命名为.png,例如,系统正常上传gif图像,那么,如何阻止gif图像和其他非png或jpg的扩展?我的代码: $imageNameBefore = $_FILES["the_image"]["name"]; $imageNameBeforeExt = basename($nomeImgAntes); $imageNameExt = pathinfo($imageNameBeforeExt, PATHINFO_EXTE
$imageNameBefore = $_FILES["the_image"]["name"];
$imageNameBeforeExt = basename($nomeImgAntes);
$imageNameExt = pathinfo($imageNameBeforeExt, PATHINFO_EXTENSION);
$allowedExt = array("jpg", "jpeg", "png");
if(!in_array($imageNameExt, $allowedExt )) {
echo "Only images with extensions jpg or png are accepted!";
} else {
$imageNameTmp = $_FILES["the_image"]["tmp_name"];
$imageNameDir = "../photos";
$nameImageEnd = md5($imageNameTmp).$imageNameExt;
move_uploaded_file($imageNameTmp, ($imageNameDir.$nameImageEnd));
imagedestroy($imageNameTmp);
}
不检查文件名,而是通过“解析”整个内容(例如,将图像加载到gd)或通过魔法字节(例如,文件的某些部分必须存在并包含特定值,才能至少成为有效的png/jpeg图像)检查文件内容 见
-
-
-到目前为止,您尝试了什么?我将尝试使用imagecreatefromjpeg和imagecreatefrompng函数这是您代码的全部功能吗?你在使用什么框架吗?不使用框架,纯php