版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
同其他很多語(yǔ)言一樣,數(shù)據(jù)的存儲(chǔ)一般有兩種方式:文件和數(shù)據(jù)庫(kù)。文《PHP開發(fā)從入門到精通》第12章PHP中的文件與目錄的處理-網(wǎng)站開發(fā)專用書件存儲(chǔ)通常是針對(duì)文本文件而言的,適用于存儲(chǔ)量不是很大,而且比較簡(jiǎn)單、安全性要求不是很嚴(yán)格的數(shù)據(jù)。本章詳細(xì)介紹目錄和文件的相關(guān)操作,主要內(nèi)容包括目錄的創(chuàng)建以及操作,文件的打開、讀取、復(fù)制和移動(dòng)等操作。【例12-1】目錄實(shí)例——?jiǎng)?chuàng)建目錄《PHP開發(fā)從入門到精通》目錄在PHP開發(fā)中有著非常重要的作用,通過(guò)使用目錄和子目錄對(duì)存儲(chǔ)在服務(wù)器上的數(shù)據(jù)作進(jìn)一步的分類與存儲(chǔ)。在使用目錄時(shí),常見的操作包括以下幾個(gè):打開目錄opendir()。語(yǔ)法格式如下:
int
dir_handle
opendir(string
path)其中,參數(shù)path為目錄的路徑及目錄名。函數(shù)返回值為可供其他目錄函數(shù)使用的int型句柄。關(guān)閉目錄closedir()。語(yǔ)法格式如下:
closedir(int
dir_handle)其中,參數(shù)dir_handle為已經(jīng)用opendir()函數(shù)打開的可操作目錄句柄。函數(shù)無(wú)返回值,運(yùn)行后,將關(guān)閉打開指向dir_handle的目錄。讀取目錄里的文件readdir()。語(yǔ)法格式如下:
string
readdir(resource
dir_handle)其中,參數(shù)dir_handle為已經(jīng)用opendir()函數(shù)打開的可操作目錄句柄。函數(shù)返回目錄中的文件名稱?!纠?2-1】目錄實(shí)例——?jiǎng)?chuàng)建目錄《PHP開發(fā)從入門到精通》(4)創(chuàng)建目錄mkdir()。語(yǔ)法格式如下:bool
mkdir
(
string
pathname
[,
int
mode]
)嘗試新建一個(gè)由pathname指定的目錄。返回值為邏輯值,若創(chuàng)建目錄成功則返回TRUE,否則返回FALSE。默認(rèn)的mode是0777,意味著最大可能的訪問(wèn)權(quán)。要確保正確操作,必須給mode前面加上0。mode參數(shù)包含3個(gè)八進(jìn)制數(shù),按順序分別指定了所有者、所有者所在的組以及
所有人的訪問(wèn)限制。每一部分都可以通過(guò)加入所需的權(quán)限來(lái)計(jì)算出所要的權(quán)限。數(shù)字1表示使文件可執(zhí)行,數(shù)字2表示使文件可寫,數(shù)字4表示使文件可讀。加入這些數(shù)字來(lái)制定所需要的權(quán)限。如:0600:所有者可讀/寫,其他人沒(méi)有任何權(quán)限。0644:所有者可讀/寫,其他人只有讀的權(quán)限。0755:所有者擁有所有可能的訪問(wèn)權(quán),其他人擁有只讀與執(zhí)行的權(quán)限。0750:所有者擁有所有可能的訪問(wèn)權(quán),所有者所在組擁有只讀與執(zhí)行的權(quán)限?!纠?2-1】目錄實(shí)例——?jiǎng)?chuàng)建目錄《PHP開發(fā)從入門到精通》刪除目錄unlink()。語(yǔ)法格式如下:bool
rmdir(stringdirname)刪除指定的目錄dirname,返回一個(gè)邏輯值,參數(shù)dirname為字符變量,為想要?jiǎng)h除的目錄名。刪除目錄前務(wù)必確保目錄存在,或者目錄已經(jīng)為空,否則會(huì)提示錯(cuò)誤信息。不能刪除不存在的目錄和不為空的目錄?!纠?2-2】文件實(shí)例——計(jì)數(shù)器《PHP開發(fā)從入門到精通》文件的相關(guān)函數(shù)如下:判斷文件是否存在的函數(shù)file_exists()。語(yǔ)法格式如下:
bool
file_exists(string
filename)判斷filename指定的文件或目錄是否存在,若存在則返回TRUE,否則返回FALSE。打開文件函數(shù)fopen()。語(yǔ)法格式如下:
resource
fopen(string
filename,string
mode)函數(shù)打開本地或者遠(yuǎn)程文件,參數(shù)filename是需要打開的文件名,為字符型變量。參數(shù)mode為打開的模式,有6種,如表12-1所示?!纠?2-2】文件實(shí)例——計(jì)數(shù)器《PHP開發(fā)從入門到精通》寫入文件函數(shù)fwrite()。語(yǔ)法格式如下:int
fwrite
(
resource
handle,
string
string
[,
int
length]
)函數(shù)把string的內(nèi)容寫入文件句柄handle處。如果指定了length,當(dāng)寫入了length個(gè)字節(jié)或者寫完了string以后,寫入就會(huì)停止。返回值為寫入的字符數(shù),出現(xiàn)錯(cuò)誤時(shí)則返回FALSE。讀取文件內(nèi)容函數(shù)fgetc()sfgets()sfgetss()sfile()sfread(讀取文件內(nèi)容的函數(shù)有很多,這里講解常用的幾個(gè)函數(shù):1)fgetc()函數(shù)。語(yǔ)法格式如下:
string
fgetc(resource
handle)返回一個(gè)包含有一個(gè)字符的字符串,該字符從文件句柄handle指向的文件中得到。碰到EOF則返回FALSE。文件句柄handle必須是有效的,并且必須指向一個(gè)由fopen()或其他文件打開語(yǔ)句成功打開的文件?!纠?2-2】文件實(shí)例——計(jì)數(shù)器《PHP開發(fā)從入門到精通》2)fgets()函數(shù)。語(yǔ)法格式如下:string
fgets
(
int
handle
[,
int
length]
)從文件句柄handle指向的文件中讀取一行字符,字符長(zhǎng)度最多為length-1個(gè)字節(jié)。遇到以下三種情況會(huì)停止讀取字符:遇到換行符(包括在返回值中)。
遇到EOF文件末尾。已經(jīng)讀取了length-1字節(jié)。若沒(méi)有指定length,則默認(rèn)為1024字節(jié)。讀取數(shù)據(jù)失敗,則返回邏輯值FALSE?!纠?2-2】文件實(shí)例——計(jì)數(shù)器《PHP開發(fā)從入門到精通》fgetss()函數(shù)。語(yǔ)法格式如下:string
fgetss
(
resource
handle
[,
int
length
)用法與fgets()類似,也是按行返回文件的內(nèi)容,但本函數(shù)會(huì)從讀取的文本中去掉所有HTML和PHP標(biāo)記。file()函數(shù)。語(yǔ)法格式如下:
array
file(string
filename)將文件filename所有的內(nèi)容讀入到一個(gè)數(shù)組中。該函數(shù)的返回值為保存文件filename所有內(nèi)容的數(shù)組,數(shù)組長(zhǎng)度為文件行數(shù),文件的一行對(duì)應(yīng)數(shù)組的一個(gè)元素?!纠?2-2】文件實(shí)例——計(jì)數(shù)器《PHP開發(fā)從入門到精通》5)fread()函數(shù)。語(yǔ)法格式如下:string
fread
(
int
handle,
int
length
)函數(shù)從指定文件句柄handle指向的文件中讀取長(zhǎng)度為length的字符串。(5)關(guān)閉文件函數(shù)fclose()。語(yǔ)法格式如下:
bool
fclose(resource
handle)關(guān)閉已經(jīng)打開的文件handle。返回一個(gè)邏輯值,若關(guān)閉成功則返回TRUE,失敗則返回FALSE?!纠?2-2】文件實(shí)例——計(jì)數(shù)器《PHP開發(fā)從入門到精通》刪除文件函數(shù)unlink()。語(yǔ)法格式如下:
bool
unlink(string
filename)刪除文件filename。返回一個(gè)邏輯值,若成功則返回TRUE,否則返回FALSE。若要?jiǎng)h除本例中的counter.txt,語(yǔ)句如下:unlink($counter_file);復(fù)制文件函數(shù)copy()。語(yǔ)法格式如下:bool
copy
(
string
source,
string
destination
)將文件從source復(fù)制到destination。若成功則返回TRUE,否則返回FALSE?!纠?2-3】給出了詳細(xì)的說(shuō)明與講解。移動(dòng)文件。PHP中雖然提供了一個(gè)rename()函數(shù)可以進(jìn)行文件的移動(dòng),但在移動(dòng)過(guò)程中執(zhí)行性能比較低。我們可以自定義一個(gè)移動(dòng)文件的函數(shù),文件名自定,函數(shù)流程為先將要移動(dòng)的文件復(fù)制到目標(biāo)位置,然后再將源位置的文件刪除掉?!纠?2-3】復(fù)制、移動(dòng)、刪除文件實(shí)例《PHP開發(fā)從入門到精通》復(fù)制文件。采用函數(shù)copy()實(shí)現(xiàn)文件從一個(gè)位置復(fù)制到另一個(gè)位置。
COPY()的語(yǔ)法格式如下:bool
copy
(
string
source,
string
destination
)將文件從source復(fù)制到destination。若成功則返回TRUE,否則返回FALSE。移動(dòng)文件。PHP中提供了一個(gè)移動(dòng)文件的函數(shù)rename(string
source,string
destination),但該函數(shù)會(huì)影響到程序的性能,所以現(xiàn)在已經(jīng)不經(jīng)常使用了。本例采取自定義函數(shù)move_file()來(lái)實(shí)現(xiàn)文件從一個(gè)位置移動(dòng)到另一個(gè)位置?!纠?2-3】復(fù)制、移動(dòng)、刪除文件實(shí)例《PHP開發(fā)從入門到精通》move_file()函數(shù)定義如下:function
move_file($source,$destination)//自定義移動(dòng)文件函數(shù){//復(fù)制文件//刪除源位置文件if(copy($source,$destination)){echo"文件移動(dòng)成功!";}else{echo"不能復(fù)制文件!";}unlink($source)or
die("不能刪除文件
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度××企業(yè)vi設(shè)計(jì)合同
- 2024年度XX影視作品制作合同
- 2024烏魯木齊市國(guó)有土地上房屋征收補(bǔ)償合同
- 2024年度智能工廠設(shè)計(jì)與建設(shè)合同
- 公司員工試用期轉(zhuǎn)正個(gè)人工作總結(jié)
- 會(huì)計(jì)專業(yè)頂實(shí)習(xí)報(bào)告錦集五篇
- 中秋節(jié)晚會(huì)精彩致辭范文(6篇)
- 2024年二手房買賣合同模板(含裝修情況)
- 2024年度健身服務(wù)承包經(jīng)營(yíng)合同協(xié)議書
- 2024年度知識(shí)產(chǎn)權(quán)許可使用合同:含許可范圍、許可費(fèi)用、使用期限
- 醫(yī)學(xué)創(chuàng)新與科學(xué)研究知到章節(jié)答案智慧樹2023年岳陽(yáng)職業(yè)技術(shù)學(xué)院
- 社會(huì)體育導(dǎo)論教學(xué)教案
- 廠房物業(yè)管理服務(wù)合同
- 心理健康家長(zhǎng)會(huì)(課件)-小學(xué)生主題班會(huì)通用版
- 新生適應(yīng)性成長(zhǎng)小組計(jì)劃書
- 08SS523建筑小區(qū)塑料排水檢查井
- 教學(xué)評(píng)一體化的教學(xué)案例 課件
- 父親去世訃告范文(通用12篇)
- 人教版八年級(jí)上Unit 2How often do you exercise Section A(Grammar Focus-3c)
- 導(dǎo)讀工作總結(jié)優(yōu)秀范文5篇
- SB/T 10851-2012會(huì)議中心運(yùn)營(yíng)服務(wù)規(guī)范
評(píng)論
0/150
提交評(píng)論