① php如何批量修改某个文件夹下所有文件名的方法
方法抄如下:我重命名的规袭则是把所有有空格的全部替换成“_”,然后再后面加一个"_s"。
<?php
$paths = "C://Documents and Settings//sk//Desktop//s//";
$d = dir($paths);
while (false !== ($entry = $d->read())) {
$table_change = array(' '=>'_');
$newName = strtr($entry,$table_change);
$newName = substr($newName, 0,-4);
rename($paths.$entry, $paths.$newName."_s.jpg");
}
$d->close();
echo "done";
?>
以上就是php如何批量修改某个文件夹下所有文件名的方法
② php 压缩文件同时重命名文件怎么实现
<?php
//需开启配置php_zip.dll
//phpinfo();
header("Content-type:text/html;charset=utf-8");
functionget_zip_originalsize($filename,$path){
//先判断待解压的文件是否存在
if(!file_exists($filename)){
die("文件$filename不存在!");
}
$starttime=explode('',microtime());//解压开始的时间
//将文件名和路径转成windows系统默认的gb2312编码,否则将会读取不到
$filename=iconv("utf-8","gb2312",$filename);
$path=iconv("utf-8","gb2312",$path);
//打开压缩包
$resource=zip_open($filename);
$i=1;
//遍历读取压缩包里面的一个个文件
while($dir_resource=zip_read($resource)){
//如果能打开则继续
if(zip_entry_open($resource,$dir_resource)){
//获取当前项目的名称,即压缩包里面当前对应的文件名
$file_name=$path.zip_entry_name($dir_resource);
//以最后一个“/”分割,再用字符串截取出路径部分
$file_path=substr($file_name,0,strrpos($file_name,"/"));
//如果路径不存在,则创建一个目录,true表示可以创建多级目录
if(!is_dir($file_path)){
mkdir($file_path,0777,true);
}
//如果不是目录,则写入文件
if(!is_dir($file_name)){
//读取这个文件
$file_size=zip_entry_filesize($dir_resource);
//最大读取6M,如果文件过大,跳过解压,继续下一个
if($file_size<(1024*1024*6)){
$file_content=zip_entry_read($dir_resource,$file_size);
file_put_contents($file_name,$file_content);
}else{
echo"<p>".$i++."此文件已被跳过,原因:文件过大,->".iconv("gb2312","utf-8",$file_name)."</p>";
}
}
//关闭当前
zip_entry_close($dir_resource);
}
}
//关闭压缩包
zip_close($resource);
$endtime=explode('',microtime());//解压结束的时间
$thistime=$endtime[0]+$endtime[1]-($starttime[0]+$starttime[1]);
$thistime=round($thistime,3);//保留3为小数
echo"<p>解压完毕!,本次解压花费:$thistime秒。</p>";
}
$size=get_zip_originalsize('20131101.zip','temp/');
?>
③ 用PHP实现文件的重命名)
文件名一定要用引号,(如果里面有单引号,那么就用双引号,如果里面有双引号,那么外面用单引号,一般情况下用单引号,因为双引号会让php先做一下变量解析,这个浪费资源)
④ 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实现文件的重命名
move_uploaded_file就可以重命名了。重命名后保存到数据库中也要用新名称
move_uploaded_file(“@a:临时文件名”,"@b:保存的文件路径和文件名");
你的程序@b处使用是的原来的名称,是可以改名称的
⑥ php高手们,用php怎么改文件名
as3本身就可以上传的啊.如果想用PHP就让AS3写完的xml零时存在某个地方.用PHP FTP之.然后再用PHP删掉
⑦ PHP上传文件 如何重命名
新生成一个名字,然后把上传的文件复制到新的位置上就可以了
move_uploaded_file(上传的暂时文件名, 新的文件名)