欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

文件夹复制 (win&linux可)

程序员文章站 2023-12-27 15:16:33
...

复制文件夹到另一个地方。

* 制文件夹 
	eg:将D:/wwwroot/下面wordpress复制到
	D:/wwwroot/www/explorer/0000/del/1/
	末尾都不需要加斜杠,复制到地址如果不加源文件夹名,
	就会将wordpress下面文件复制到D:/wwwroot/www/explorer/0000/del/1/下面
* $from = 'D:/wwwroot/wordpress';
* $to = 'D:/wwwroot/www/explorer/0000/del/1/wordpress';
*/

剪切文件&文件夹,可以直接使用rename实现。最快最好的方法。

eg:
对于文件夹:
将 D:/wwwroot/wordpress
剪切到 D:/wwwroot/www/explorer/0000/del/1/wordpress
可以zhi'ji rename($path_copy,$path_past.$filename.'/');

对于文件
将 D:/wwwroot/wordpress/test.php
剪切到 D:/wwwroot/www/explorer/0000/del/1/wordpress/下面,即就是
rename($path_copy,$path_past.$filename);

/**
* 复制文件夹 
	eg:将D:/wwwroot/下面wordpress复制到
	D:/wwwroot/www/explorer/0000/del/1/
	末尾都不需要加斜杠,复制到地址如果不加源文件夹名,
	就会将wordpress下面文件复制到D:/wwwroot/www/explorer/0000/del/1/下面
* $from = 'D:/wwwroot/wordpress';
* $to = 'D:/wwwroot/www/explorer/0000/del/1/wordpress';
*/

function copy_dir($source, $dest){
	$result = false;
	if (is_file($source)) {
		if ($dest[strlen($dest)-1] == '/') {
			$__dest = $dest . "/" . basename($source);
		} else {
			$__dest = $dest;
		} 
		$result = @copy($source, $__dest);
		//echo iconv( $config['app_charset'],$config['system_charset'], $source);
		@chmod($__dest, 0755);
	}elseif (is_dir($source)) {
		if ($dest[strlen($dest)-1] == '/') {
			$dest = $dest . basename($source);
			@mkdir($dest);
			@chmod($dest, 0755);
		} else {
			@mkdir($dest, 0755);
			@chmod($dest, 0755);
		} 
		$dirHandle = opendir($source);
		while ($file = readdir($dirHandle)) {
			if ($file != "." && $file != "..") {
				if (!is_dir($source . "/" . $file)) {
					$__dest = $dest . "/" . $file;
				} else {
					$__dest = $dest . "/" . $file;
				} 
				$result = copy_dir($source . "/" . $file, $__dest);
			} 
		} 
		closedir($dirHandle);
	} else {
		$result = false;
	} 
	return $result;
} 

上一篇:

下一篇: