您好,登錄后才能下訂單哦!
Windows系統(tǒng)中的文件類型:file、dir、unknown
Unix 系統(tǒng)中的文件類型:block、char、dir、fifo、link、unknown
Block:塊設(shè)備文件,如某個(gè)磁盤分區(qū)、軟驅(qū)、光驅(qū)等
Char:字符設(shè)備是指在I/O傳輸過程中,以字符為單位進(jìn)行傳輸?shù)脑O(shè)備,例如鍵盤、打印機(jī)
Dir:目錄類型,目錄也是文件的一種
Fifo:命名管道,常用于將信息從一個(gè)進(jìn)程傳遞到另一個(gè)進(jìn)程
File:普通文件類型,如文本文件或可執(zhí)行文件等
Link:符號(hào)鏈接,是指向文件指針的指針,類似Windows中的快捷方式
Unknown:未知類型
文件屬性處理函數(shù):
file_exists() 檢查文件或目錄是否存在
filesize() 取得文件大小
is_readable() 判斷給定文件是否可讀
is_wiritable() 判斷給定文件是否可寫
is_executable() 判斷給定文件是否可執(zhí)行
filectime() 獲取文件的創(chuàng)建時(shí)間
filemtime() 獲取文件的修改時(shí)間
fileatime() 獲取文件的訪問時(shí)間
stat() 獲取文件大部分屬性值
注:對(duì)同一個(gè)文件名進(jìn)行多次操作,并且需要該文件信息不被緩存時(shí)可調(diào)用clearstatcache()函數(shù)來清除被PHP緩存的該文件信息。
目錄的基本操作
一解析目錄路徑
1 basename()
返回路徑中的文件名部分。
@path 文件路徑
@suffix 文件擴(kuò)展名,如果提供了則不會(huì)輸出擴(kuò)展名。
string basename( string path [,string suffix])
2 dirname()
返回去掉文件文件名后的目錄名
3 pathinfo()
返回一個(gè)關(guān)聯(lián)數(shù)組,其中包括制定路徑中的目錄名、基本名和擴(kuò)展名。
二 遍歷目錄
1 opendir() 打開目錄,返回可供其他目錄函數(shù)使用的目錄句柄(資源類型)。如果該目錄不存在或者沒有訪問權(quán)限,則返回FALSE。
2 readdir() 用于讀取指定目錄,接受已經(jīng)用opendir()函數(shù)打開的可操作目錄句柄作為參數(shù),函數(shù)返回當(dāng)前目錄指針位置的一個(gè)文件名,并將目錄指針向后移動(dòng)一位。
3 closedir() 關(guān)閉指定目錄,接受已經(jīng)用opendir()函數(shù)打開的可操作目錄句柄作為參數(shù)。
4 rewinddir() 倒回目錄句柄,接受已經(jīng)用opendir()函數(shù)打開的可操作目錄句柄作為參數(shù)。將目錄指針重置目錄到開始處,即倒回目錄的開頭。
文件的基本操作
一、文件的打開與關(guān)閉
@ filename 要被打開的文件的URL
@ mode 文件模式(r,r+,w,w+,x,x+,a,a+,b,t)
@use_include_path
@ zcontext 可以支持其他協(xié)議
resource fopen(string filename,string mode [, bool use_include_path [,resource zcontext]])
fclose()
二、寫入文件
@ handle 需要打開的文件資源
@ string 字符串輸出到第一個(gè)參數(shù)指定的資源中
@ length 寫入最大字節(jié)數(shù)
@ return 返回寫入的字符數(shù)
fwrite()
三、讀取文件內(nèi)容
1 fread()
string fread (inthandle,int length)
2 fgets() fgetc()
string fgets(int handle [,int length])
3 file()
4 readfile()
四、移動(dòng)文件指針
intftell(resource handle) //返回文件指針的當(dāng)前位置
intfseek(resource handle,int offset [,int whence])//移動(dòng)文件指針到指定的位置
boolrewind(resource handle)//移動(dòng)文件指針到文件的開頭
五、文件的鎖定機(jī)制
@operation
LOCK_SH 取得共享鎖定(從文件中讀取數(shù)據(jù)時(shí)使用)
LOCK_EX 取得獨(dú)占鎖定(向文件中寫入數(shù)據(jù)時(shí)使用)
LOCK_UN 釋放鎖定(無論共享或獨(dú)占鎖,都用它釋放)
LOCK_NB 附加鎖定(防止flock()在鎖定時(shí)堵塞)
bool flock ( inthandle,int operation [,int &wouldblock])
六、文件的上傳
1 客戶端上傳設(shè)置
method=”POST”
enctype=”multipart/form-date”
2 在服務(wù)器通過PHP處理上傳
$_FILES多維數(shù)組
PHP的文件上傳處理函數(shù)
PHP配置文件的設(shè)置 php.ini
file_uploads 確定服務(wù)器上的PHP腳本是否可以接受HTTP文件上傳
uploads_max_filesize 限制PHP處理上傳文件大小的最大值,此值必須小于post_max_size
post_max_size 限制通過POST方法可以接受信息的最大值,此值應(yīng)當(dāng)大于配置指令upload_max_file的值,因?yàn)槌松蟼鞯奈募?,還可能傳遞其他的表單域
upload_tmp_dir 上傳的文件存放的臨時(shí)路徑,可以是一個(gè)絕對(duì)路徑。這個(gè)目錄對(duì)于擁有此服務(wù)器進(jìn)程用戶必須是可寫的。默認(rèn)值為NULL則為操作系統(tǒng)的臨時(shí)文件夾。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。