PHP上传将文件名更改为" image"

时间:2013-11-14 17:24:54

标签: php file-upload

我正在尝试使用以下函数在上传时保留原始文件名。

现在它上传图像并将其存储在正确的文件夹中;但是,它会将文件名更改为image.png

PHP:

class Upload {

    function upimg($file, $up = "./upload/") {
        $whitelist = array("jpg", "jpeg", "png", "gif");
        if (isset($_FILES[$file]) && $_FILES[$file]['error'] == 0) {
            $info = pathinfo($_FILES[$file]['name']);
            $extension = $info['extension'];
            list($width, $height, $type, $attr) = getimagesize($_FILES[$file]['tmp_name']);
            if (($width > 10 || $height > 10) & in_array($extension, $whitelist)) {
                $url = $file . '.' . $extension;
                move_uploaded_file($_FILES[$file]['tmp_name'], $up . $url);
                return $url;
            }
        }
    }

}

我想这会发生,因为$file实际上并没有保留原始文件名...不确定如何解决这个问题。我哪里做错了??

1 个答案:

答案 0 :(得分:0)

您应该更改$url$url = $file . '.' . $extension;$url = $FILES[$file]['name'];的定义方式