2012-08-03 38 views
0

我試圖從一個位置複製整個文件夾到另一個使用PHP,但它似乎並沒有工作:複製整個目錄和內容從一個地方到另一個使用PHP

$username = "peter" //this is just an example. 
$userdir = "../Users/".$username."/"; 
mkdir($userdir);// create folder 

// copy image folder 
$source = "templates/template1/images/";//copy image folder -source 
$dest = $userdir; 

function copyr($source, $dest){ 
// Simple copy for a file 
if (is_file($source)) { 
$c = copy($source, $dest); 
chmod($dest, 0777); 
return $c; 
} 

// Make destination directory 
if (!is_dir($dest)) { 
$oldumask = umask(0); 
mkdir($dest, 0777); 
umask($oldumask); 
} 

// Loop through the folder 
$dir = dir($source); 
while (false !== $entry = $dir->read()) { 
// Skip pointers 
if ($entry == "." || $entry == "..") { 
continue; 
} 

} 

// Clean up 
$dir->close(); 
return true; 
} 

我也有嘗試了我在網上看到的其他解決方案,但沒有成功將不勝感激任何幫助


我也只是試過這個腳本沒有任何運氣。

我只是嘗試另一個腳本,仍然沒有運氣:(。

$template_homepage = "templates/template1/index.php";//path to default template homepage 
$homepage = file_get_contents($template_homepage);//get default homepage structure 


$username = testuser;// folder name for store 


if (trim($username) == '') { 
die("An error occured."); 
} else { 
$userdir = "../Users/".$username."/"; 
mkdir($userdir);// create folder for new website 

// copy image folder 
$src = 'templates/template1/images';//copy image folder -source 
$dst = $userdir; 

    function rcopy($src, $dst) { 
    if (file_exists($dst)) rrmdir($dst); 
    if (is_dir($src)) { 
mkdir($dst); 
$files = scandir($src); 
foreach ($files as $file) 
if ($file != "." && $file != "..") rcopy("$src/$file", "$dst/$file"); 
} 
    else if (file_exists($src)) copy($src, $dst); 

} 




$fh = fopen($userdir."index.php", 'w') or die("An error occured. ");// create home page in users folder 

    // $stringData = $title; //."\n";// 
    fwrite($fh, $homepage);// write homepage structure into new homepage file. 
    fclose($fh);// close new homepage file. 
$launchpage = "../Users/".$username."/"; // launch new homepage file. 
header("Location: $launchpage"); 
    } 
+0

複製你有沒有在dest目錄下的權限? – artsylar 2012-08-03 06:45:03

回答

4

你爲什麼不使用exec和使用OS命令到該文件夾​​?

exec('cp -r sourcedir destdir'); 
+0

我不知道該怎麼做,是不是可以幫到我呢?PLS – 2012-08-03 06:08:15

+0

剛剛試過這個,不能正常工作。 $用戶名 「/」。 的mkdir($用戶目錄); //新網站上創建文件夾 \t //複製圖像文件夾 \t $ SRC = 「/模板/模板1 /圖片」; //複製圖像文件夾 - 源 $ DES = $用戶目錄; \t shell_exec(「cp -r $ src $ dest」); – 2012-08-03 06:25:11

+0

是否可以在調用mkdir($ userdir)後確認$ userdir已成功創建? – artsylar 2012-08-03 06:46:14

相關問題