1、開啟檔案
resource fopen( string filename, string mode [, int use_include_path [, resource zcontext]])
//檔案名稱的路徑分隔符號以「/」
//mode:檔案可能透過下列模式來開啟:
只讀。在文件的開頭開始。 | |
讀/寫。在文件的開頭開始。 | |
只寫。開啟並清空文件的內容;如果文件不存在,則建立新文件。 | |
讀/寫。開啟並清空文件的內容;如果文件不存在,則建立新文件。 | |
追加。開啟並向文件文件的末端進行寫入操作,如果文件不存在,則建立新文件。 | |
讀/追加。透過向文件末端寫內容,來保持文件內容。 |
x 只寫。建立新文件。如果檔案以存在,則傳回 FALSE。 |
讀/寫。建立新文件。如果檔案已存在,則傳回 FALSE 和一個錯誤。 註解:如果 fopen() 無法開啟指定文件,則傳回 0 (false)。
2、讀取檔案內容
(1)讀取一個字元:
從檔案指標指定的位置讀取一個字元。
<span style="color:#000000;">string fgetc( resource handle)</span>
(2)讀取一行字元:
fgets()從檔案指標讀取一行資料。檔案指標必須是有效的,並且必須指向一個由fopen()或fsockopen()成功開啟的檔案。
string fgets( int handle [, int length])
//length:要讀取的資料長度。 fgets()函數能夠從handle指定檔案讀取一行並傳回長度最大為length-1個位元組的字串。在遇到換行符、EOF或讀取到了length-1個位元組後停止,如果忽略length參數,那麼就會讀取到行結束。
註解:在呼叫函數之後,檔案指標會移到下一行。
fgetss()函數從開啟的檔案中讀取一行並過濾掉 HTML 和 PHP 標記。
(3)讀取任意長度的字串:fread()讀取開啟的檔案。還可以讀取二進位檔案。
string fread( int handle, int length)
//length指定要讀取的位元組數。此函數在讀取到length個位元組或到達EOF時停止執行。 filesize(handle)取得檔案資料的長度。
(4)讀取整個檔案:readfile()、file()和file_get_contents()
int readfile( string filename [, bool use_include_path [, resource context]])
//
readfile()讀取一個檔案並寫入到輸出緩衝,成功回傳讀取的位元組數,失敗返回FALSE。
array file( string filename [, int use_include_path [, resource context]])
//file()將整個檔案的內容讀入到一個陣列中。成功返回數組,數組中的每個元素都是檔案中對應的一行,包括換行符號在內;失敗返回FALSE。 string file_get_contents( string filename [, bool use_include_path [, resource context [,int offset [, int maxlen]]]])
應用readfile()、file()、file_get_contents()函數,不需要開啟/關閉文件,不需要輸出語句,直接套用函數即可。
但是在讀取一個字元、一行字元和任意長度的字串時必須應用fopen()函數開啟檔案後才能進行讀取,在讀取完成後還要應用fclose()函數關閉檔案。
(1)fwrite(),別名fputs()
int fwrite( resource handle, string string [,int length])
fwrite()函數把string的內容寫入檔案指標handle處。成功返回寫入的字元數,失敗FALSE。
在應用fwrite()函數時,如果給出length參數,那麼magic_quotes_runtime(php.ini檔案中的選項)配置選項將被忽略,而string中的斜線將不會被抽去。如果在區分二進位檔案和文字檔案的系統上(如Windows)套用這個函數,開啟檔案時,fopen()函數的mode參數要加上'b'。
(2)file_put_contents():無需用fopen()和fclose()
int file_put_contents( string filename, string data [, int flags [, resource context]])
本函數可安全用於二進位物件。如果「fopen wrappers」已經被激活,則在本函數中可以把URL當作檔案名稱來使用。
🎜4、關閉檔案指標🎜🎜bool fclose( resource handle)