PHP中rename()函數(shù)的妙用講解
大家都知道,rename()函數(shù)可以對(duì)文件或目錄進(jìn)行重命名的操作。其實(shí)它還可以做很多事情。
熟悉unix的朋友應(yīng)該知道shell命令mv,它相當(dāng)與win32的移動(dòng),而且移動(dòng)的同時(shí)可進(jìn)行重命名。我發(fā)現(xiàn),php的rename()函數(shù)就相當(dāng)于mv,它不僅僅只有簡(jiǎn)單的重命名的功能,同樣可以改變文件甚至整個(gè)目錄的路徑。
例如:
$oldpath ----文件或目錄原來(lái)路徑
$newpath ----新定義路徑
那么 rename($oldpath,$newpath)就可以完成文件/目錄移動(dòng)的操作
經(jīng)過(guò)我的測(cè)試,win32和unix的php4版本都支持這個(gè)功能。
另外,好象php4的win32版取消了unlink()函數(shù)。那么還可以巧用rename()函數(shù)來(lái)完成刪除的操作,例如:
$path ---- 文件或目錄路徑
$tmp ---- tmp目錄(/tmp)
用rename($path,$tmp) 將文件移動(dòng)到tmp目錄.
網(wǎng)上有一種方法是copy+unlink來(lái)移動(dòng)文件,但是遇到大文件時(shí)會(huì)消耗大量時(shí)間,對(duì)性能不怎么友好,可以使用rename()來(lái)移動(dòng)文件,速度非???/p>
關(guān)于rename()函數(shù)
bool rename ( string $oldname , string $newname [, resource $context ] ) 嘗試把 oldname 重命名為 newname,若操作成功則返回True,失敗返回False。
注意:
1. 對(duì)于非空文件夾,只能在同一盤(pán)符下移動(dòng)。
2. 對(duì)于空文件夾,rename()可以在不同盤(pán)符間移動(dòng)。但是目標(biāo)文件夾的父目錄必須存在。
3. 對(duì)于文件,rename()也能在不同盤(pán)符之間移動(dòng)。
實(shí)列代碼:
rename("/file1/www.txt", "/file2/my_file.txt");
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接
相關(guān)文章
php利用ffmpeg提取視頻中音頻與視頻畫(huà)面的方法詳解
想要提取視頻中的音頻信息,首選的技術(shù)是ffmpeg,ffmpeg是一個(gè)非常有用的命令行程序,它可以用來(lái)轉(zhuǎn)碼媒體文件。這篇文章主要給大家介紹了PHP利用ffmpeg提取視頻中音頻與視頻畫(huà)面的相關(guān)資料,需要的朋友可以參考下。2017-06-06
php自定義函數(shù)br2nl實(shí)現(xiàn)將html中br換行符轉(zhuǎn)換為文本輸入中換行符的方法【與函數(shù)nl2br功能相反】
這篇文章主要介紹了php自定義函數(shù)br2nl實(shí)現(xiàn)將html中br換行符轉(zhuǎn)換為文本輸入中換行符的方法,具有與函數(shù)nl2br相反的功能,并附帶了相應(yīng)的JS實(shí)現(xiàn)方法,需要的朋友可以參考下2017-02-02
說(shuō)明的比較細(xì)的php 正則學(xué)習(xí)實(shí)例
首先,讓我們看看兩個(gè)特別的字符:’^’ 和 ‘$’ 他們是分別用來(lái)匹配字符串的開(kāi)始和結(jié)束,一下分別舉例說(shuō)明2008-07-07
PHP基于反射機(jī)制實(shí)現(xiàn)自動(dòng)依賴(lài)注入的方法詳解
這篇文章主要介紹了PHP基于反射機(jī)制實(shí)現(xiàn)自動(dòng)依賴(lài)注入的方法,結(jié)合實(shí)例形式分析了php使用反射實(shí)現(xiàn)自動(dòng)依賴(lài)注入的步驟、原理與相關(guān)操作技巧,需要的朋友可以參考下2017-12-12
php創(chuàng)建無(wú)限級(jí)樹(shù)型菜單
這篇文章主要介紹了php創(chuàng)建無(wú)限級(jí)樹(shù)型菜單 ,主要使用的是遞歸函數(shù),感興趣的小伙伴們可以參考一下2015-11-11

