首页 >数据库 >mysql教程 >如何在 PHP 中保存之前将上传的文件重命名为随机数字?

如何在 PHP 中保存之前将上传的文件重命名为随机数字?

Patricia Arquette
Patricia Arquette原创
2024-12-13 10:38:11861浏览

How Can I Rename Uploaded Files to Random Numbers Before Saving in PHP?

在保存到目录之前重命名上传的文件

问题:

在现有的 PHP 中用于将文件上传到目录的脚本,是否可以在保存之前将文件名更改为随机数字? move_uploaded_file() 函数似乎设置了文件名,但它当前的行为并不理想。

答案:

要将上传的文件重命名为随机数,调整 move_uploaded_file() 函数的第二个参数。不使用原始文件名,而是使用随机数生成新文件名并附加文件扩展名。

代码修改:

// Get the file extension
$temp = explode(".", $_FILES["file"]["name"]);
$extension = end($temp);

// Generate a new file name based on the current time
$newfilename = round(microtime(true)) . '.' . $extension;

// Save the file with the new file name
move_uploaded_file($_FILES["file"]["tmp_name"], "../img/imageDirectory/" . $newfilename);

说明:

round(microtime(true)) 函数根据当前时间。附加文件扩展名可确保新文件名保留原始文件类型。通过在 move_uploaded_file() 函数中使用 $newfilename 代替 $_FILES"file",文件将以重命名的随机数作为文件名保存。

以上是如何在 PHP 中保存之前将上传的文件重命名为随机数字?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn