大家都知道,rename()
函數可以對文件或目錄進行重命名的操作。其實它還可以做很多事情。
熟悉unix的朋友應該知道shell命令mv,它相當與win32的移動,而且移動的同時可進行重命名。我發現,php的rename()函數就相當于mv,它不僅僅只有簡單的重命名的功能,同樣可以改變文件甚至整個目錄的路徑。
例如:
$oldpath ----文件或目錄原來路徑
$newpath ----新定義路徑
那么 rename($oldpath,$newpath)就可以完成文件/目錄移動的操作
經過我的測試,win32和unix的php4版本都支持這個功能。
另外,好象php4的win32版取消了unlink()函數。那么還可以巧用rename()函數來完成刪除的操作,例如:
$path ---- 文件或目錄路徑
$tmp ---- tmp目錄(/tmp)
用rename($path,$tmp) 將文件移動到tmp目錄.
網上有一種方法是copy+unlink來移動文件,但是遇到大文件時會消耗大量時間,對性能不怎么友好,可以使用rename()
來移動文件,速度非常快
關于rename()函數
bool rename ( string $oldname , string $newname [, resource $context ] )
嘗試把 oldname 重命名為 newname,若操作成功則返回True,失敗返回False。
注意:
1. 對于非空文件夾,只能在同一盤符下移動。
2. 對于空文件夾,rename()可以在不同盤符間移動。但是目標文件夾的父目錄必須存在。
3. 對于文件,rename()也能在不同盤符之間移動。
實列代碼:
rename("/file1/www.txt", "/file2/my_file.txt");
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。如果你想了解更多相關內容請查看下面相關鏈接
您可能感興趣的文章:- php中rename函數用法分析
- php Rename 更改文件、文件夾名稱
- frename PHP 靈活文件命名函數 frename
- php rename錯誤原因的查找方法