|
1.文件操作.
打開文件:
打開指定的文件時會返回相應的對象,若不存在指定的文件,那麼可能會自動創建這個文件。
resource fopen(string filename,string mode [,int use_include_path][,resource context]);
filename 可以是包含文件路徑的文件名,也可以是某種協議給出的URL(打開遠程文件).為了避免系統切換帶來的麻煩,采用'/'作為路徑分隔符.
mode: 設置打開文件的方式,分別有:
r:只讀模式,文件指針位于文件頭部.
r+:只讀模式----讀/寫模式,文件指針位于頭部文件.注意可能產生覆蓋.
w:只寫模式,文件指針位于文件頭部.如果文件存在,刪除內容重寫;否則,自行創建文件.
w+:只寫模式----讀寫文件,讀/寫文件指針指向文件頭部.如果文件存在,刪除內容重寫;否則,自行創建文件.
x:謹慎寫----寫模式打開文件,從文件頭部開始寫如.如果文件存在,返回false,產生一個E_WARNING級別的錯誤信息
x+:謹慎寫---讀寫模式代開文件.如果文件存在,返回false,產生一個E_WARNING級別的錯誤信息
a:追加,文件指針指向文件尾部.如果文件存在,則直接在文件尾追加;否則,自行創建文件.
a+:追加,文件指針指向文件尾部.如果文件存在,則直接在文件尾追加或者讀取;否則,自行創建文件.
b:二進制模式.用于與其他模式進行鏈接.(windows 下的選項)
t: 用于與其他模式進行結合.(windows 下的選項)
請慎用fopen()函數,因為一不小心就有可能將文件刪除掉.同時,不同的操作系統具有不同的行結束習慣(UNIX:/n Windows:/r/n Macinitosh:/r).如果錯誤的使用行結束符,那么當打開文件時,可能輸出一堆亂碼.以上可以通過"'t'","'b'"來避免.
讀取文件:
string fgetc(resource handle);//返回從handle指向的文件中的一個字符.如果遇到EOF,則返回false;
string fgets(int handle[,int length]);//從文件指針指向的位置獲取一行字符,并且返回最大為length-1個字節的字符串..文件指針必須有效,且指向一個由fopen()或fsockopen()成功打開的文件.length表示讀取的數據的長度.在遇到換行,EOF,或者指定length時結束.忽略length將讀到行結束.
string fgetss(resource handle[,int length][,string allowable_tags]);//讀取一行,且過濾掉html,php標記.
string fread(int handle,int length);//從文件中讀取任意長度的數據。,還可以用于讀取二進制文件。handle 為指向文件的資源,length 讀取length個字節或者遇到EOF時停止執行。
例子:
復制代碼 代碼如下:
<?php
$filename="./files.text";
$fp=fopen($finename,"rb");
$encho fread($fp,100);
?>
readfile(),file()和file_get_contents()函數.
readfile(),file()和file_get_contents()函數.
int readfile(string filename[,bool use_include_path,resource context]);//讀取一個文件并寫入到緩沖區,如果成功,則返回讀取的字節數,否則返回false。filename文件名。參數use_include_path控制是否支持在include_path中搜索文件,true為支持。使用readfile函數不需要打開/關閉文件。
array file(string filename [,bool use_include_path[,resource context]]);//將整個文件的內容讀取到數組中。如果成功,返回數組,數組中的每個元素都是文件中對應的一行,包活換行符在內;否則返回false;
string file_get_contents(string filename[,bool use_include_path[,resource context[,int offset[,int maxlen]]]]);//context 為5.0新增的內容,可以用NULL來忽略。offset,maxlen為5.1的的內容。offset 用于標記文件 主站蜘蛛池模板: 项城市| 青河县| 沁阳市| 宁德市| 景德镇市| 松潘县| 西宁市| 民乐县| 黄山市| 孙吴县| 莱西市| 饶河县| 镇巴县| 家居| 子长县| 饶河县| 渝中区| 洮南市| 泰安市| 榆中县| 泾川县| 邻水| 永仁县| 楚雄市| 庄浪县| 山丹县| 南溪县| 郎溪县| 海宁市| 太谷县| 克拉玛依市| 通许县| 望奎县| 清远市| 鹤岗市| 乳山市| 大理市| 浪卡子县| 鄂托克前旗| 百色市| 武鸣县|