当前位置:首页 » 文件管理 » php重命名上传文件

php重命名上传文件

发布时间: 2023-09-18 22:20:38

php 上传文件重命名

上传文件或图片进行重命名是我们在php上传中会碰到的一个问题了,在重命名无非就是对你上传的文件生成一个随机的字符串了,包括有Md5,随机,或按时间日期来重命名了,下面我来给大家介绍。




如我们在上传文件页面中如下操作:

$name=$_FILES['userfile']['name'];//将所上传的文件名称赋予name

然后我们要对它进行重命名

//文件名的自动生成
list($usec,$new_name)=explode("",microtime());
if(@$extension_name){//限制文件类型为jpg、gif、png、bmp
move_uploaded_file($tmp_name,$new_dir.'/'.$new_name.'.'.$extension_name);//移动到目标文件夹
echo'上传成功';

这样我们就把文件名以时间日期生成了一个新的文件名了,例:

<formaction="upload_file.php"method="post"
enctype="multipart/form-data">
<labelfor="file">Filename:</label>
<inputtype="file"name="file"id="file"/>
<br/>
<inputtype="submit"name="submit"value="Submit"/>
</form>

以下是我添加的将文件名重命名为系统时间的代码:

<?php$date=date(ymdhis);
//echo($date);
if((($_FILES["uppic"]["type"]=="image/gif")
||($_FILES["uppic"]["type"]=="image/jpeg")
||($_FILES["uppic"]["type"]=="image/pjpeg"))
&&($_FILES["uppic"]["size"]<2000000))
{
if($_FILES["uppic"]["error"]>0)
{
echo"ReturnCode:".$_FILES["uppic"]["error"]."<br/>";
}
else
{
//echo"Upload:".$_FILES["uppic"]["name"]."<br/>";
//echo"Type:".$_FILES["uppic"]["type"]."<br/>";
//echo"Size:".($_FILES["uppic"]["size"]/1024)."Kb<br/>";
//echo"Tempfile:".$_FILES["uppic"]["tmp_name"]."<br/>";
$uptype=explode(".",$_FILES["uppic"]["name"]);
$newname=$date.".".$uptype[1];
//echo($newname);
$_FILES["uppic"]["name"]=$newname;
if(file_exists("pics/".$_FILES["uppic"]["name"]))
{
echo$_FILES["uppic"]["name"]."alreadyexists.";
}
else
{
$_FILES["uppic"]["name"]=
move_uploaded_file($_FILES["uppic"]["tmp_name"],
"pics/".$_FILES["uppic"]["name"]);
echo"<script>alert('上传成功!')</script>";
echo"<script>window.location.href='

}
}
}
else
{
echo"Invalidfile";
}
?>

大家可以参考一下

㈡ 如何用PHP给上传的文件改名

PHP 中的 move_uploaded_file() 函数可以实现,改相应的参数即可

move_uploaded_file(file,newloc)

参数说明
file 必需。规定要移动的文件。
newloc 必需。规定文件的新位置。

注释:本函数仅用于通过 HTTP POST 上传的文件。

注意:如果目标文件已经存在,将会被覆盖。

例如:
<?php
//上传路径
$uploads_dir = '/uploads';
foreach ($_FILES["pictures"]["error"] as $key => $error) {
if ($error == UPLOAD_ERR_OK) {
$tmp_name = $_FILES["pictures"]["tmp_name"][$key];
//下面的$name就是上传后的文件名字,可以改变,比如之前文件名字为:1.gif 可以改为 2.gif
$name = $_FILES["pictures"]["name"][$key];
move_uploaded_file($tmp_name, "$uploads_dir/$name");
}
}
?>

㈢ thinkphp里上传的图片如何进行重命名,命名为自己想要的格式,它默认格式是时间戳的

TP文档上说明有这个参数,saveRule保存规则:

不为空的时候可以选择手册上说的几种命名规则,不同的场景使用不同的方式,只要加个判断就可以了。如果同名需要覆盖原文件的话添加属性:$upload->uploadReplace = true;

㈣ php 如何对上传文件的文件名进行重命名

<html>
<body>
<form id="form1" name="form1" enctype="multipart/form-data" method="post" action="test.php">
上传图片
<input name="tupian" type="file" id="tupian" />
<input type="submit" name="button" id="button" value="上传" />
</form>
<?php
if (isset($_FILES['tupian'])) {
// echo '<pre>';
// print_r($_FILES["tupian"]);
// echo '</pre>';

if ($_FILES["tupian"]['error'] == UPLOAD_ERR_OK) {
$tmp_name = $_FILES["tupian"]["tmp_name"];
$name = $_FILES["tupian"]["name"];
move_uploaded_file($tmp_name, "$name");//在这里进行文件改名
}
echo '<img src="' . $name . '" />';

}
?>
</body>
</html>

㈤ PHP上传重命名文件,怎么能以时间重命名,

分享一个源码给大家:

复制代码 代码如下:
<?php
$file = dirname(__FILE__).'/新建 文本文档.txt';
echo L_rename($file);
function L_rename($file){
$iCount = 0;
$File_type = strrchr($file, '.');
$FilePath = substr($file, 0, strrpos($file, '.'));
while (true) {
if (is_file($file)) {
++$iCount;
$file = $FilePath . '('. $iCount .')' . $File_type;
}else{
break;
}
}
if (fopen($file, 'w')) {$Msg = '创建成功 '.$file;}
return $Msg;
}
?>

㈥ php 多文件上传重命名问题

print_r($_FILES)
你可以知道结构

重命名问题很好解决,
比如 你上传2个 1.gif 先是读取扩展名 $_FILES 里面就有

名字全部要重命名 time().mt_rand(100,999).扩展名
就是时间戳+100~999 之前的随机数 进行重命名
把真名的信息保存到数据库里面, 明白了吧 呵呵

㈦ PHP上传文件,怎么自动重命名附源码。

只用日期会有重名的可能
$_FILES["Filedata"]["name"] = date("Y-m-d") . rand() . $type;

就是在合适的时候改变$_FILES["Filedata"]["name"]的值,如下

echo "上传的文件: " . $_FILES["Filedata"]["name"] . "<br />";
echo "文件类型: " . $type . "<br />";
echo "文件大小: " . ($_FILES["Filedata"]["size"] / 1024) . " Kb<br />";
echo "临时文件: " . $_FILES["Filedata"]["tmp_name"] . "<br />";

$_FILES["Filedata"]["name"] = md5(microtime(1) . rand()) . $type;

热点内容
怎么给电脑换配置 发布:2025-01-24 13:04:04 浏览:919
如何修改服务密码10086 发布:2025-01-24 12:44:27 浏览:512
dosftp连接 发布:2025-01-24 12:35:56 浏览:802
编程来炒股 发布:2025-01-24 12:35:14 浏览:854
python正则中括号 发布:2025-01-24 12:32:08 浏览:584
配置排列用英语怎么说 发布:2025-01-24 12:32:00 浏览:607
led流水灯c语言程序 发布:2025-01-24 12:28:15 浏览:46
苹果平板锁屏密码在哪里 发布:2025-01-24 12:16:41 浏览:958
网校c语言 发布:2025-01-24 12:12:15 浏览:787
少儿机器人编程哪个机构好 发布:2025-01-24 11:51:18 浏览:697