2016-07-09 225 views
0

這裏是我的代碼,我正在嘗試的是從它最初來自的目錄的根目錄取文件post.php$file,然後把它放在這個uniqueID目錄中,或者它應該最終到達$newFolder5變量來完成。 !copy函數中的$root是指向當前目錄內的文件的路徑,則當在頁面加載時執行復制功能時,它應該轉到$newFolder5目錄。 $root或者copy的來源可以是一個帶有文件目錄的字符串嗎?從一個文件夾到另一個文件夾的php複製功能

<?php 
$unique = uniqid(); 
$root = '/gallry/' . $dir_auth1 . '/'. 'post.php'; 
$folder = mkdir($unique, 0755); 
$uniqueFolder = '/' . $unique . '/' . 'post.php'; 
$destination2 = $dir_auth1 . '/' . $unique . '/' . 'post.php'; 
$newFolder = '/' . $dir_auth1 . $uniqueFolder; 

if (!copy($root, $newFolder)) { 
    echo " status not created."; 

} else { 
    echo "Success!"; 


} 
?> 

我改變$dir_auth1'aidan',因爲這是根目錄的post.php是英寸

總之,什麼林要做的是創建一個uniqid()文件夾/目錄,並把post.php內的。或複製它。

+0

爲什麼在'$ folder5'的賦值中使用'$ folder'?根據'mkdir'是否成功,'$ folder'只是'TRUE'或'FALSE',它不是任何名稱。 – Barmar

+0

你正在分配許多你永遠不會使用的變量,使得代碼非常混亂。你能擺脫所有不必要的東西,所以我們可以看到你真的在做什麼? – Barmar

+0

copy()的第二個參數必須是目標目錄中的文件名,而不僅僅是目錄名。 – Barmar

回答

1

您並未創建您要複製到的相同目錄。

$unique = uniqid(); 
$root = "/gallry/$dir_auth1/post.php"; 
$uniqueFolder = "/$dir_auth1/$unique"; 
$destFile = "$uniqueFolder/post.php"; 
if (mkdir($uniqueFolder)) { 
    if (copy($root, $destFile)) { 
     echo "Success!"; 
    } else { 
     echo " status not created"; 
    } 
} else { 
    echo "Unable to create folder $uniqueFolder"; 
} 
+0

$獨特未被使用... – aidangig

+0

它在賦值給'$ uniqueFolder'。 – Barmar

+0

我刪除了添加的字符串,用相應的變量替換它們。 請看一看,你沒有正確定義$ unique,但我修復了它。 '$ unique = uniqid(); $ root =「/gallry/".$dir_auth1."/post.php」; $ uniqueFolder =「/".$dir_auth1."/".$unique; $ destFile = $ uniqueFolder。「/ post.php」;如果(mkdir($ uniqueFolder)){ if(copy($ root,$ destFile)){ echo「Success!」; } else { echo「status not created」; } } else { echo「Unable to create folder $ uniqueFolder」; }' – aidangig

相關問題