檔案夾檔案拷貝/複製函數如下
/** * 檔案夾檔案拷貝 * * @param string $src 來源檔案夾 * @param string $dst 目的地檔案夾 * @return bool */function dir_copy($src = '', $dst = ''){ if (empty($src) || empty($dst)) { return false; } $dir = opendir($src); dir_mkdir($dst); while (false !== ($file = readdir($dir))) { if (($file != '.') && ($file != '..')) { if (is_dir($src . '/' . $file)) { dir_copy($src . '/' . $file, $dst . '/' . $file); } else { copy($src . '/' . $file, $dst . '/' . $file); } } } closedir($dir); return true;}/** * 建立檔案夾 * * @param string $path 檔案夾路徑 * @param int $mode 存取權限 * @param bool $recursive 是否遞迴建立 * @return bool */function dir_mkdir($path = '', $mode = 0777, $recursive = true){ clearstatcache(); if (!is_dir($path)) { mkdir($path, $mode, $recursive); return chmod($path, $mode); } return true;}
PHP複製檔案夾及下面所有檔案,參考如下:
function xCopy($source, $destination, $child){ //用法: // xCopy("feiy","feiy2",1):拷貝feiy下的檔案到 feiy2,包括子目錄 // xCopy("feiy","feiy2",0):拷貝feiy下的檔案到 feiy2,不包括子目錄 //參數說明: // $source:來源目錄名 // $destination:目的目錄名 // $child:複製時,是不是包含的子目錄 if(!is_dir($source)){ echo("Error:the $source is not a direction!"); return 0; } if(!is_dir($destination)){ mkdir($destination,0777); } $handle=dir($source); while($entry=$handle->read()) { if(($entry!=".")&&($entry!="..")){ if(is_dir($source."/".$entry)){ if($child) xCopy($source."/".$entry,$destination."/".$entry,$child); } else{ copy($source."/".$entry,$destination."/".$entry); } } } return 1;}?>