在检查上传图片的文件扩展名时,我的代码总是返回false,导致图片没有上传。上传的图像具有适当的扩展名。
我的问题是为什么它不接受文件?如果检查出文件,则上传成功。
仅供参考,还有其他检查,所以不要担心这是我唯一的安全检查。只是这是导致所有问题的原因。
$name = $_FILES['file']['name'];
$tmp_name = $_FILES['file']['tmp_name'];
$pre_ext = explode(".", $tmp_name);
$ext = end($pre_ext);
if (getimagesize($tmp_name) != false)
{
//below is the check that is causing all the problems
if ($ext == "PNG" || $ext == "png" || $ext == "jpg" || $ext == "JPG" || $ext == "jpeg" || $ext == "JPEG" || $ext == "GIF" || $ext == "gif"){
if ($_FILES['file']['error'] == 0)
{
move_uploaded_file($tmp_name, 'post_images/' . $name);
}
}
}