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

php上传图片重命名

发布时间: 2023-07-09 20:51:32

㈠ 如何用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");
}
}
?>

㈡ 阿里云oss php上传图片问题 上传前把图片重命名之后再上传到oss 怎么写代码呢

他这里有一个上传示例的

<?php

/**
*加载sdk包以及错误代码包
*/
require_once'oss_php_sdk/sdk.class.php';
$oss_sdk_service=newALIOSS();
$bucket='你的bucket名字';

if((($_FILES["file"]["type"]=="image/gif")
||($_FILES["file"]["type"]=="image/jpeg")
||($_FILES["file"]["type"]=="image/pjpeg"))
&&($_FILES["file"]["size"]<2000000))
{
if($_FILES["file"]["error"]>0)
{
echo"ReturnCode:".$_FILES["file"]["error"]."<br/>";
}
else
{
echo"Upload:".$_FILES["file"]["name"]."<br/>";
echo"Type:".$_FILES["file"]["type"]."<br/>";
echo"Size:".($_FILES["file"]["size"]/1024)."KB<br/>";
echo"Tempfile:".$_FILES["file"]["tmp_name"]."<br/>";

$content='';
$length=0;
$fp=fopen($_FILES["file"]["tmp_name"],'r');
if($fp)
{
$f=fstat($fp);
$length=$f['size'];
while(!feof($fp))
{
$content.=fgets($fp,8192);
}
}
$upload_file_options=array('content'=>$content,'length'=>$length);
$upload_file_by_content=$oss_sdk_service->upload_file_by_content($bucket,$_FILES["file"]["name"],$upload_file_options);//$_FILES["file"]["name"]这个就是文件名,你可以自己定义的。
$img_url="http://storage.aliyun.com/".$bucket."/".$_FILES["file"]["name"];
echo"Uploadsuccessfully!TheOSSURLofthisfile:".$img_url."<br/>";
echo"Ifthebucketispublic-read,theuploadedimagecanbeshownas:"."<br/>";
echo"<imgsrc=$img_url/>";
}
}
else
{
echo"Invalidfile";
}

关于文件名我已经给你注释在代码中了,你试试看

㈢ 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上传图片并更改图片名

题目没怎么看明白,回答可能有误,有问题请追问。

(假设你的表号是$_POST["表号"])
如果你只是想把上传图片的文件名改成 表号.gif之类的话,只要把move_uploaded_file($tmp_file, $destination)中的$destination改成$_POST["表号"].“.gif”就可以了。

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

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

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

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

上传文件,PHP是在你的服务器上建立临时文件,日期肯定是当时的,名字是随机名字,你应该把这个文件COPY到你自己的文件夹下(应该专门用一个文件夹来存放大家上传的文件)。下面是我上传文件的例子(部分代码):

保存部分PHP代码:
for ($i=1; $i<=$filecnt; $i++){
$f_image="file".$i;
$tmp_name=$HTTP_POST_FILES["$f_image"][tmp_name];
$src_name=$HTTP_POST_FILES["$f_image"][name];
$src_size=$HTTP_POST_FILES["$f_image"][size];
$note_str=$_REQUEST["note$i"];
if (!$tmp_name || !$src_name || $tmp_name=='nono') continue;
$ext=substr(strrchr($src_name,'.'),1);
$ext=strtolower($ext);
if (substr($ext,0,3)=='php' || $ext=='pl' || $ext=='cgi'){
echo "$src_name 没有保存,因为你传的是脚本文件,如果你不想在主机上搞破坏,请你压缩后上传。<br>";
continue;
}
//处理图片文件
$imginfo=getimagesize($tmp_name);
if ($imginfo && $imginfo[0]>0){
//压缩宽度超过800的图片为800,10K以上的JPG图片用30%进行压缩
if ($imginfo[0]>800){
echo "你上传的图片幅面为 $imginfo[0] x $imginfo[1] ,将被压缩到800个象素宽。<br>";
system('"C:\Program Files\ImageMagick-6.0.7-Q16\convert.exe"'." -sample 800 -quality 80 $tmp_name $tmp_name");
} elseif($imginfo[2]==2 && $src_size>10240) system("/usr/local/bin/convert -quality 30 $tmp_name $tmp_name");
//规范化图片文件扩展名
if ($imginfo[2]==1) $ext='gif';
elseif ($imginfo[2]==2) $ext='jpg';
elseif ($imginfo[2]==3) $ext='png';
elseif ($imginfo[2]==4) $ext='swf';
elseif ($imginfo[2]==5) $ext='psd';
elseif ($imginfo[2]==6) $ext='bmp';
elseif ($imginfo[2]==7) $ext='tiff';
elseif ($imginfo[2]==8) $ext='tiff';
//压缩BMP、TIFF文件为JPG格式
if ($imginfo[2]==6 || $imginfo[2]==7 || $imginfo[2]==8){
system('"C:\Program Files\ImageMagick-6.0.7-Q16\convert.exe"'." -quality 80 $tmp_name $tmp_name.jpg");
rename("$tmp_name.jpg",$tmp_name);
$ext='jpg';
}
}
$save_name="$year_week/$save_id-$i";
if ($ext!='') $save_name.='.'.$ext;
$result="文件 $src_name 保存为 $save_name ";
if(($tmp_name,$save_name)){
$str="insert into clubfile(user,ext,note,fip,pub,fname,fsize) values('$PHP_AUTH_USER','$ext','$note_str','$ip',$pub,'$save_name',$src_size)";
mysql_query($str);
$result .= '成功。';
}
else{
$result .= '失败!';
}
echo $result.'<br>';

上传页面PHP代码:
echo <<<END
<div class=pagetitle>上传文件</div>
<center>特别说明:上传后<b>先</b>在其它网站链接的文件将被自动删除!</center>
<script language="javascript">
var filecnt=1;
function addfile()
{
filecnt++;
document.all.item('fileinput').innerHTML = document.all.item('fileinput').innerHTML + "<br>上传文件"+filecnt+": <input type=file name=file"+filecnt+" size=30 onBlur=setNote("+filecnt+")> 说明:<input type=text name=note"+filecnt+" size=32>";
form1.filecnt.value=filecnt;
}
function del_note_path(){
for(i=1;i<=filecnt;i++){
v=eval('document.form1.note'+i);
v.value=v.value.replace(/.*\\\\/,'');
}
}
</script>
<form name=form1 method=post enctype="multipart/form-data" action=$_SERVER[PHP_SELF]>
<input type=hidden name=job value='upload_save'>
<input type=hidden name=filecnt value=1>
<INPUT TYPE=hidden name=MAX_FILE_SIZE value=10240000>
<span id=fileinput>上传文件1: <input type=file name=file1 size=30 onBlur=setNote(1)> 说明:<input type=text name=note1 size=32></span><br>
<input type=button onclick="javascript:addfile();" value='增加上传文件'>(可以一次上传多个文件)
<input type=button onclick='javascript:del_note_path();' value='删除说明中的目录'><br>
公开: <input type=checkbox name=pub> (选中公开以后,别人可以看见你上传的文件) <br>
<input type=submit value="确认文件清单,立即上传">(建议你一定写上详细的文件说明,因为上传后文件将统一命名)
</form>
<a href=$PHP_SELF>返回浏览画面</a>
<script language=javascript>
function setNote(i){
var s='';
eval("s=form1.file"+i+".value");
s=s.toLowerCase();
s=s.substr(s.length-4);
if (s=='.bmp') alert('严禁上传BMP文件:请你用画图打开,另存为JPG格式再上传');
s="if (form1.file"+i+".value!='' && form1.note"+i+".value=='') form1.note"+i+".value=form1.file"+i+".value";
eval(s);
}
</script>
</body>
</html>
END;

㈦ PHP自动重命名文件实现方法

本文实例讲述了PHP自动重命名文件实现方法。分享给大家供大家参考。具体方法分析如下:
PHP重命名文件名我们在实际开发过程中经常会使用到,比如用户上传文件或是一些缓存文件自动生成的功能我们都需要使用到自动重命名功能。但一般我们在制作上传文件时命名方式都是使用取系统当前时间加上随时数的方式在进行,这种方法固然可行但有时候并不能满足客户要需求。有些客户就要求我们的文件名命名方式要像windows系统一样自动流水编号,比如上传一个名字为“新建文本文档”当再有其它人上传一个文件名为“新建文本文档”时我们就使用流水号命名意思就是自动然第二个“新建文本文档”命名为“新建文本文档(1)”
当再有人上传同名文件再以此类推。
下面分享一个源码给大家:
复制代码
代码如下:<?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程序设计有所帮助。

热点内容
在哪里开启密码显示 发布:2025-02-04 18:38:30 浏览:787
怎么查询qq密码 发布:2025-02-04 18:20:10 浏览:511
python编写接口 发布:2025-02-04 18:08:30 浏览:78
怎么给游戏设置密码 发布:2025-02-04 18:03:08 浏览:926
商品存储规划 发布:2025-02-04 17:45:24 浏览:567
ios访问共享 发布:2025-02-04 17:36:33 浏览:335
javabuild 发布:2025-02-04 17:30:19 浏览:592
gnulinux编译 发布:2025-02-04 17:30:18 浏览:132
苏州阿里云服务器专网 发布:2025-02-04 17:21:05 浏览:526
如何学习php 发布:2025-02-04 17:11:55 浏览:389