php文件系統(tǒng)處理方法小結(jié)
本文總結(jié)分析了php文件系統(tǒng)處理方法。分享給大家供大家參考,具體如下:
文件類型
以Linux為模型的, 在Windows只能獲取file, dir或unknow 三種類型
在Linux/Unix下, block, char, dir, fifo, file, link, unknown7種型
block :塊設(shè)置文件,磁盤分區(qū),軟驅(qū), cd-rom等
char: 字符設(shè)備,I/O (輸入輸出中)以字符為單位的設(shè)備, 例如鍵盤,打印機(jī)等
dir: 目錄也是文件的一種/目錄文件
fifo: 信息管道,從一個(gè)程序傳輸?shù)搅硪粋€(gè)進(jìn)程
file: 普通的文件類型如文本文件,可執(zhí)行文件
link: 鏈接文件,相當(dāng)于windows下的快捷方式
unknown :未知類型
1.文件屬性處理函數(shù)
filetype("目錄或文件名") 獲取類型
is_dir -- 判斷給定文件名是否是一個(gè)目錄
is_file -- 判斷給定文件名是否為一個(gè)正常的文件
is_link -- 判斷給定文件名是否為一個(gè)符號(hào)連接
is_executable(); -- 判斷給定文件名是否可執(zhí)行
file_exists();--文件是否存在
filesize();--返回文件大小
is_readable();--文件是否可讀
is_writeable();--文件是否可寫
filectime();--文件創(chuàng)建時(shí)間
filemtime();--文件修改時(shí)間
fileactime();--文件最后訪問(wèn)時(shí)間
stat();--文件狀態(tài),返回關(guān)于給定文件的信息的數(shù)組
bool ftruncate ( resource handle, int size );
接受文件指針 handle 作為參數(shù),并將文件大小截取為 size。如果成功則返回 TRUE,失敗則返回 FALSE。
bool rename ( string oldname, string newname [, resource context] );
2.目錄
目錄屬性
* basename(url[,擴(kuò)展名]); //返回文件名 * dirname(url); //目錄名 * pathinfo(url); //路徑信息
例子:
$path="/var/www/html/page.php"; echo basename($path);// 返回page.php echo basename($path,".php"); //page echo dirname($paht);// /var/www/html $arr=pathinfo($paht); $arr["dirname"] // /var/www/html $arr["basename"]// page.php $arr["extension"]// .php
遍歷目錄
opendir(url); readdir(url);//返回當(dāng)前目錄指針只為的一個(gè)文件名,并將目錄指針向后移動(dòng)一位 closedir(url); rewinddir(url);//把目錄指針重置到開始處
統(tǒng)計(jì)目錄大小
統(tǒng)計(jì)目錄的大小只能建立遞歸函數(shù)把目錄的文件都加起來(lái);
統(tǒng)計(jì)磁盤大小可以使用 disk_free_space(url);和 disk_total_space(url);
建立和刪除目錄
mkdir(url);//建立目錄 rmdir(url);//刪除空目錄 unlink(url);//刪除文件
刪除非空目錄只能自己建立遞歸函數(shù);
復(fù)制目錄
copy($scrfile,$to);//復(fù)制文件
得自定義遞歸函數(shù)實(shí)現(xiàn)目錄復(fù)制功能
3.文件的基本操作
fopen(url); fclose(url);
寫入文件
int fwrite(resoure handle,strint string[,int length]);
返回寫入的字符數(shù)或是FALSE
fputs()是fwrite()的別名
int file_put_contents ( string filename, string data [, int flags [, resource context]] );
和依次調(diào)用 fopen(),fwrite() 以及 fclose() 功能一樣。
讀取文件
string fread ( resource handle, int length );
從文件指針 handle 讀取最多 length 個(gè)字節(jié)。 該函數(shù)在讀取完 length 個(gè)字節(jié)數(shù),或到達(dá) EOF 的時(shí)候
string file_get_contents ( string filename [, bool use_include_path [, resource context [, int offset [, int maxlen]]]] ); array file ( string filename [, int use_include_path [, resource context]] );
數(shù)組中的每個(gè)單元都是文件中相應(yīng)的一行,包括換行符在內(nèi)。
string fgets ( resource handle [, int length] ); string fgetc ( resource handle ); int readfile ( string filename [, bool use_include_path [, resource context]] );
讀入一個(gè)文件并寫入到輸出緩沖。
如果訪問(wèn)遠(yuǎn)程文件,必須在php的配置文件中激活"allow_url_fopen"選項(xiàng),才能使用fopen()函數(shù)打開遠(yuǎn)程文件
使用FTP協(xié)議連接遠(yuǎn)程文件的時(shí),只可以用“只讀”或“只寫”模式打開文件。
移動(dòng)文件指針
int ftell ( resource handle );
返回由 handle 指定的文件指針的位置,也就是文件流中的偏移量。
int fseek ( resource handle, int offset [, int whence] );
在與 handle 關(guān)聯(lián)的文件中設(shè)定文件指針位置。新位置,從文件頭開始以字節(jié)數(shù)度量,是以 whence 指定的位置加上 offset。whence de 值定義為:
SEEK_SET - 設(shè)定位置等于 offset 字節(jié)。
SEEK_CUR - 設(shè)定位置為當(dāng)前位置加上 offset。
SEEK_END - 設(shè)定位置為文件尾加上 offset。(要移動(dòng)到文件尾之前的位置,需要給 offset 傳遞一個(gè)負(fù)值。)
bool rewind ( resource handle );
將 handle 的文件位置指針設(shè)為文件流的開頭
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php文件操作總結(jié)》、《PHP運(yùn)算與運(yùn)算符用法總結(jié)》、《PHP網(wǎng)絡(luò)編程技巧總結(jié)》、《PHP基本語(yǔ)法入門教程》、《php操作office文檔技巧總結(jié)(包括word,excel,access,ppt)》、《php日期與時(shí)間用法總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫(kù)操作入門教程》及《php常見數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
- php中的filesystem文件系統(tǒng)函數(shù)介紹及使用示例
- PHP 文件系統(tǒng)詳解
- PHP文件系統(tǒng)管理(實(shí)例講解)
- PHP開發(fā)文件系統(tǒng)實(shí)例講解
- php讀取目錄及子目錄下所有文件名的方法
- PHP中文件讀、寫、刪的操作(PHP中對(duì)文件和目錄操作)
- php遍歷目錄與文件夾的多種方法詳解
- PHP判斷文件是否存在、是否可讀、目錄是否存在的代碼
- php中檢查文件或目錄是否存在的代碼小結(jié)
- PHP 創(chuàng)建文件(文件夾)以及目錄操作代碼
- PHP獲取當(dāng)前文件的父目錄方法匯總
- PHP FileSystem 文件系統(tǒng)常用api整理總結(jié)
相關(guān)文章
php實(shí)現(xiàn)的中秋博餅游戲之?dāng)S骰子并輸出結(jié)果功能詳解
這篇文章主要介紹了php實(shí)現(xiàn)的中秋博餅游戲之?dāng)S骰子并輸出結(jié)果功能,結(jié)合實(shí)例形式分析了php擲骰子的原理及游戲結(jié)果的圖形輸出相關(guān)操作技巧,需要的朋友可以參考下2017-11-11PHP中使用glob函數(shù)實(shí)現(xiàn)一句話刪除某個(gè)目錄下的所有文件
這篇文章主要介紹了PHP中使用glob函數(shù)實(shí)現(xiàn)一句話刪除某個(gè)目錄下的所有文件,重點(diǎn)在glob函數(shù)的使用上,需要的朋友可以參考下2014-07-07php對(duì)字符串中的特殊符號(hào)進(jìn)行過(guò)濾的方法
有時(shí)候我們會(huì)遇到過(guò)濾字符串中特殊字符的問(wèn)題,本文提供了三個(gè)處理特殊字符串的方法,文中通過(guò)代碼示例介紹的非常詳細(xì),具有一定的參考價(jià)值,需要的朋友可以參考下2023-11-11支持生僻字且自動(dòng)識(shí)別utf-8編碼的php漢字轉(zhuǎn)拼音類
這篇文章主要介紹了支持生僻字且自動(dòng)識(shí)別utf-8編碼的php漢字轉(zhuǎn)拼音類,非常實(shí)用!需要的朋友可以參考下2014-06-06php實(shí)現(xiàn)與python進(jìn)行socket通信的方法示例
這篇文章主要介紹了php實(shí)現(xiàn)與python進(jìn)行socket通信的方法,結(jié)合實(shí)例形式分析了php使用自定義類發(fā)送socket請(qǐng)求數(shù)據(jù)及Python接收socket數(shù)據(jù)并處理請(qǐng)求等相關(guān)操作技巧,需要的朋友可以參考下2017-08-08百度工程師講PHP函數(shù)的實(shí)現(xiàn)原理及性能分析(三)
這篇文章主要介紹了百度工程師講PHP函數(shù)的實(shí)現(xiàn)原理及性能分析(三),本文講解了常用php函數(shù)實(shí)現(xiàn)及介紹,并作了總結(jié)及建議,需要的朋友可以參考下2015-05-05PHP+.htaccess實(shí)現(xiàn)全站靜態(tài)HTML文件GZIP壓縮傳輸(一)
PHP+.htaccess實(shí)現(xiàn)全站靜態(tài)HTML文件GZIP壓縮傳輸(一)...2007-02-02php提示Failed to write session data錯(cuò)誤的解決方法
這篇文章主要介紹了php提示Failed to write session data錯(cuò)誤的解決方法,較為詳細(xì)的分析了session寫入錯(cuò)誤的原因與解決方法,并附帶說(shuō)明了php的工作機(jī)制,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2014-12-12