如何在PHP中讀寫文件
在PHP中讀寫文件,可以用到一下內(nèi)置函數(shù):
1.fopen(創(chuàng)建文件和打開文件)
語法:
fopen(filename,mode)
filename,規(guī)定要打開的文件。mode,打開文件的模式,可能的值見下表。
mode 說明 'r' 只讀方式打開,將文件指針指向文件開頭。 'r+' 讀寫方式打開,將文件指針指向文件開頭。 'w' 寫入方式打開,將文件指針指向文件開頭并將文件大小截為零。如果文件不存在則嘗試創(chuàng)建。 'w+' 讀寫方式打開,將文件指針指向文件開頭并將文件大小截為零。如果文件不存在則嘗試創(chuàng)建。 'a' 寫入方式打開,將文件指針指向文件末尾。如果文件不存在則嘗試創(chuàng)建。 'a+' 讀寫方式打開,將文件指針指向文件末尾。如果文件不存在則嘗試創(chuàng)建。
如果成功打開文件,fopen函數(shù)的返回值是一個文件指針,如果出錯,返回 FALSE。
示例:
<?php$fp = fopen('test.txt', 'r');?>
2.fclose(關(guān)閉文件)
語法:
fclose(filepointer)
filepointer,要關(guān)閉的文件指針。如果成功,fclose 函數(shù)返回 TRUE,如果失敗,fclose 函數(shù)返回 FALSE。
示例:
<?php$fp = fopen('test.txt', 'r');fclose($fp);?>
3.feof(檢測是否已到達(dá)文件末尾)
語法:
feof(filepointer)
filepointer,要檢測的文件指針,該指針必須指向成功打開沒有關(guān)閉的文件。如果文件指針到了文件末尾或者出錯時,feof函數(shù)返回 TRUE。
示例:
<?php$fp = fopen('test.txt', 'r');while(! feof($fp)){echo fgets($fp). '<br />';}fclose($fp);?>
4.fgets(從文件指針中讀取一行)
語法:
fgets(filepointer)
filepointer,要讀取的文件指針。如果成功,從文件中讀取一行并返回字符串,如果失敗,返回 FALSE。
示例:
<?php$fp = fopen('test.txt', 'r');if($fp){for($i=1;! feof($fp);$i++){echo '行'.$i.' : '.fgets($fp). '<br />';}}else{echo '打開文件失敗';}fclose($fp);?>
假設(shè)test.txt的內(nèi)容為:
hello worldhello cnblogshello heihaozihello everyone
頁面輸出的結(jié)果為:
行1 : hello world 行2 : hello cnblogs 行3 : hello heihaozi 行4 : hello everyone
5.fwrite(寫入文件)
語法:
fwrite(filepointer,string)
filepointer,要寫入的文件指針。string,要寫入的字符串。如果成功,返回寫入的字符數(shù),如果失敗,返回 FALSE。
示例:
<?php$fp = fopen('test.txt', 'w');//文件被清空后再寫入if($fp){$count=0;for($i=1;$i<=5;$i++){$flag=fwrite($fp,'行'.$i.' : '.'Hello World!rn');if(!$flag){echo '寫入文件失敗<br>';break;}$count+=$flag;}echo '共寫入'.$count.'個字符';}else{echo '打開文件失敗';}fclose($fp);?>
頁面輸出的結(jié)果為:
共寫入100個字符
test.txt文件會被寫入:
行1 : Hello World!行2 : Hello World!行3 : Hello World!行4 : Hello World!行5 : Hello World!
注:為了簡化操作,部分函數(shù)的可選參數(shù)沒有列出。
以上就是如何在PHP中讀寫文件的詳細(xì)內(nèi)容,更多關(guān)于PHP中讀寫文件的資料請關(guān)注好吧啦網(wǎng)其它相關(guān)文章!
相關(guān)文章:
1. XML在語音合成中的應(yīng)用2. ASP基礎(chǔ)入門第四篇(腳本變量、函數(shù)、過程和條件語句)3. jscript與vbscript 操作XML元素屬性的代碼4. HTTP協(xié)議常用的請求頭和響應(yīng)頭響應(yīng)詳解說明(學(xué)習(xí))5. .NET Framework各版本(.NET2.0 3.0 3.5 4.0)區(qū)別6. HTML5實(shí)戰(zhàn)與剖析之觸摸事件(touchstart、touchmove和touchend)7. XML入門的常見問題(三)8. php使用正則驗(yàn)證密碼字段的復(fù)雜強(qiáng)度原理詳細(xì)講解 原創(chuàng)9. 不要在HTML中濫用div10. ASP將數(shù)字轉(zhuǎn)中文數(shù)字(大寫金額)的函數(shù)
