在PHP網站開發中,儲存資料通常有兩種方式,一種以文字檔方式儲存,比如txt檔案,一種是以資料庫方式儲存,比如Mysql,相對於資料庫儲存,檔案儲存體並沒有什麼優勢,但是檔案讀寫操作在基本的PHP開發中還是時有使用,今天和大家分享如何利用PHP技術實現檔案讀寫之檔案寫入操作教程,也算是對PHP檔案讀寫操作的入門學習。
將資料寫入檔案的操作主要涉及三個步驟及部分檔案操作函數如下:
1、開啟檔案(檔案操作函數:fopen)
2、寫入檔案(檔案操作函數:fwrite等)
3、關閉檔案(檔案操作函數:fclose)
下面通過檔案讀寫作業碼執行個體教程來講解
基本的PHP檔案寫入操作函數fopen、fwrite、fclose應用教程
複製代碼 代碼如下:<?
@$fp = fopen("leapsoulcn.txt","w");
if(!$fp){
echo "system error";
exit();
}else {
$fileData = "domain"."\t"."www.leapsoul.cn"."\n";
$fileData = $fileData."description"."\t"."PHP網站開發教程網,面向PHP初學者的PHP教程網。"."\n";
$fileData = $fileData."title"."\t"."本文主要講述PHP檔案讀寫操作中最基本的檔案寫入教程。";
fwrite($fp,$fileData);
fclose($fp);
}
?>
注釋:在這段檔案讀寫操作執行個體代碼中,主要功能是在檔案寫入兩行文字。
知識點:
1、使用fopen函數開啟檔案,在應用fopen函數準備開啟檔案時,你首先需要明確:
開啟檔案幹什嗎?是讀檔案中的資料呢,還是將資料寫入檔案,亦或者讀寫檔案?
另外你需要考慮如果檔案中已經存在相關資料,你是覆蓋原有檔案中的資料呢,還是僅僅將新資料添加至檔案末尾
這些問題涉及到PHP檔案讀寫操作中的fopen函數中的檔案模式的應用,fopen函數原型如下: 複製代碼 代碼如下:fopen(filename,mode,include_path,context)
調用檔案操作函數fopen()時,通常需要傳遞兩個或三個參數。
filename:規定要開啟的檔案或URL。可以指定檔案的絕對路徑,Windows一般為C:\,Unix為/,通過URL,你也可以開啟遠程檔案。在這裡寫入的檔案與PHP檔案寫入代碼檔案我放在同一個目錄。
mode:規定要求到該檔案/流的訪問類型。即開啟檔案的模式。
include_path:可選項。如果需要在include_path中搜尋檔案的話,可以將該參數設為1或TRUE。
常用的fopen的檔案操作模式說明
”r” - 以唯讀方式開啟檔案,從檔案頭開始讀。
”r+” - 以讀寫方式開啟檔案。
”w” - 以寫入方式開啟檔案,從檔案頭開始寫。如果檔案不存在則嘗試建立,如果檔案存在,則先刪除檔案中的內容。
”w+” - 以讀寫方式開啟檔案,從檔案頭開始讀寫。如果檔案不存在則嘗試建立,如果檔案存在,則先刪除檔案中的內容。
”a” - 以寫入方式開啟,從檔案末尾開始追加寫。如果檔案不存在則嘗試建立。
”a+” - 以讀寫方式開啟,從檔案末尾開始追加寫寫或者讀。如果檔案不存在則嘗試建立。
注意:在進行檔案讀寫操作時,你一定要確保開啟的檔案具有相應的讀寫權限,否則fopen會報錯。你可以使用@來抑制產生的錯誤,然後合理處理錯誤。
2、在使用檔案操作函數fopen開啟檔案後,需要通過對變數賦值,然後寫到$fp指向的檔案指標中去,在上述PHP檔案寫入操作教程執行個體中,我使用的是一行一行儲存,即換行儲存,主要通過\n作為換行分隔字元。
fwrite檔案寫入函數原型如下: 複製代碼 代碼如下:fwrite(fp,string,length)
在這裡你也可以使用檔案寫入函數fputs,其是fwrite的別名函數,功能與用法與fwrite一樣。
在檔案寫入函數fwrite中length是可選項,主要用來設定寫入檔案的最大字元數,如果設定了這個參數,fwrite會按設定的length,在指定檔案中寫入規定長度的字元。fwrite()返回寫入檔案的字元數,出現錯誤時則返回false。
在檔案寫入操作完成後,需要關閉檔案控制代碼,否則會佔用系統資源等。可以使用fclose($fp)函數來完成這件事。檔案關閉成功則返回true,否則返回false。
至此檔案寫入操作就完成了。
以上是PHP檔案讀寫操作教程之檔案寫入操作的最基本應用,除了檔案寫入操作,在PHP網站開發中經常需要讀取相關的檔案內容,檔案讀寫操作函數中可以使用不同的函數實現對檔案的讀操作。下次將分下如何讀取檔案。