2017-04-20 37 views
0

我想重命名使用PHP在一個單獨的目錄中的文件。這是我嘗試過的。當文件位於與腳本不同的目錄中時,如何在PHP中重命名文件?

<?php 

//file i want to change 
$file_dir = '/home/name/here/myfile.txt'; 

//directory of script 
$cur_dir = '/home/name/there/myhandler.php'; 

//change directory to location of file to be renamed 
chdir('/home/name/here/'); 

//change file name 
rename($file_dir, 'newfilename.txt'); 

?> 

但是,我得到一個錯誤,它仍在尋找舊目錄中的文件。

rename($file_dir, newfilename.txt): No such file or directory in /home/name/there/myhandler.php 

回答

2

嘗試指定爲NEWNAME

//change file name 
rename('/home/name/here/myfile.txt', '/home/name/here/newfile.txt'); 
+0

這工作,出於某種原因,我發現它的所有例子代碼爲'rename('full/file/path/name.txt','newname.txt')' –

0

$ file_dir需要是目錄名,而不是chdir的文件名。你不需要腳本目錄,或者你可以使用__DIR__

<?php 

//file i want to change 
$file_dir = '/home/name/here'; 

//change directory to location of file to be renamed 
chdir($file_dir); 

//change file name 
rename('filename.txt', 'newfilename.txt'); 

?> 
+0

我確實是在我的代碼,這樣正確的路徑,只是沒有添加它在這裏是爲了簡潔。我會糾正它! –

相關問題