如何利用PHP实现文件的复制并重命名

Admin 2022-08-05 群英技术资讯 321 次浏览

今天小编跟大家讲解下有关“如何利用PHP实现文件的复制并重命名”的内容 ,相信小伙伴们对这个话题应该有所关注吧,小编也收集到了相关资料,希望小伙伴们看了有所帮助。

1、сoру函数来实现复制文件后修改文件名,该函数可以将一个文件复制(拷贝)到指定目录中。

2、语法“copy($file, $newfile)”;如果执行成功则返回TRUE,如果执行失败则返回FALSE。

实例

<?php
header("Content-type:text/html;charset=utf-8");
$file    = 'test.txt';
$newfile = 'newtest.txt';
if(copy($file, $newfile)){
    echo '文件复制成功!';
}else{
    echo '文件复制失败!';
}
?>

实例扩展:

<?php 
header("Content-type: text/html; charset=utf-8"); 
// 将原文件复制
 function recurse_copy($src,$des){
 	$dir = opendir($src);
 	mkdir($des);
 	while(($file=readdir($dir)) !== false){
 		if ($file != '.' && $file != '..') {
 			if (is_dir($src.'/'.$file)) {
 				recurse_copy($src.'/'.$file,$des.'/'.$file);
 			}else{
 				copy($src.'/'.$file,$des.'/'.$file);
 			}
 
 		}
 	}
 	closedir($dir);
 }
 recurse_copy('./img','./header');
 // 将复制后的文件重新命名并输出
$dir = './header';
$filename = scandir($dir);
$match = null;
 
foreach($filename as $k=>$v){
	if ($v!='.' && $v!='..') {
		$v = @iconv('GB2312','UTF-8',$v); 
		preg_match('/\d+\s*(.*).jpg/',$v,$match);
		// preg_match('/(.*).jpg/',$v,$match);
		// var_dump($v);
		if($v != false){
			$name = $match[1];
			// echo $dir.'/'.$v.'<br>';
			// echo ($k-1).'--'.$name.'<br>';
			$oldname = $dir.'/'.$v;
			$newname = $dir.'/'.($k-1).'.jpg';
			// echo $newname.'---'.$oldname.'<br>';
			if (file_exists($newname)) {
				echo "目标文件已存";
				// return false;
			}else{
				// WINDOW系统中中文默认编码是GBK好心塞,中文文件修改一直报错
				// rename($oldname,$newname);
				 rename(iconv('UTF-8','GBK',$oldname), iconv('UTF-8','GBK',$newname));
			}
				
		}
 
		echo '<img src="'.$newname.'"" alt="'.$name.'">';
	}
}
 
 ?>

现在大家对于如何利用PHP实现文件的复制并重命名的内容应该都有一定的认识了吧,希望这篇能对大家有所帮助。最后,想要了解更多,欢迎关注群英网络,群英网络将为大家推送更多相关的文章。 群英智防CDN,智能加速解决方案

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

猜你喜欢

成为群英会员,开启智能安全云计算之旅

立即注册
专业资深工程师驻守
7X24小时快速响应
一站式无忧技术支持
免费备案服务
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
在线客服
微信公众号
返回顶部
返回顶部 返回顶部
在线客服
在线客服