如何获取真实路径文件名并重命名?

时间:2015-11-06 09:11:55

标签: php file-upload file-rename

我试图获取路径文件名并将其发布到sql表,实际上我的代码非常复杂,我无法找到解决方案。这是我的代码的主要部分,它直接到我的问题点。

        $test->setPathFilename('../tests/' . $_FILES['path_filename']['name']);

在上面的代码中,它会获得真实的路径文件名,然后将其上传到测试文件夹,它将通过 [' name']获取文件名并将其发布到sql表名 path_filename

在我的公共PHP文件中,文件名正在通过以下代码进行处理:

        $destinationName = $file['name'];

所以,现在一切都运转良好。问题是当文件存在时,它将被替换为现有文件。这就是我尝试使用此代码自动上传时重命名文件的原因:

$ext = pathinfo($file["name"], PATHINFO_EXTENSION);
$destinationName = sha1_file($file["tmp_name"]).time().".".$ext;

所以,现在如果文件名是ABC.png,它将被重命名为如下名称:56944555554554.png!

但仍然路径文件名是真实的文件名,在第一个代码中没有重命名我的意思是:

        $test->setPathFilename('../tests/' . $_FILES['path_filename']['name']);

据我所知,上面一行中的 [' name'] 是真实路径文件名,我的意思是 ABC.png

这就是为什么当上传成功然后它不会在sql表中显示它的原因,文件名已经通过实名ABC.png保存但事实上,文件名已被重命名为测试文件夹。

我该如何解决这个难题?请帮我解决这个问题。

我非常感谢您的帮助,并提前致谢。

非常感谢

0 个答案:

没有答案