我试图在上传后重命名图像文件,这是我的代码。
if (isset($_POST['image'])){
$file_name = $_POST['image'];
$extention = pathinfo("$file_name ",PATHINFO_EXTENSION);
rename("files/" . $file_name,"files/" . uniqid() . $extention);
echo "done";
}
Works但文件名显示如下
5498e85c85b89jpeg
5498e85c85b89jpeg
如何在扩展名前加点?使文件名显示如下
5498e85c85b89.jpeg
5498e85c85b89.jpeg
我应该另一个重命名操作来解决这个问题吗?还是有工作?
答案 0 :(得分:3)
在.
来电中连接rename
:
rename("files/" . $file_name,"files/" . uniqid() . "." . $extention);
顺便说一句,你需要清理输入。如果它包含任何../
组件,则它将能够重命名files/
子目录之外的文件。
答案 1 :(得分:1)
请使用此
rename("files/" . $file_name,"files/" . uniqid() .".".$extention);