PHP file_put_contents() 函數是一次性向文件寫入字符串或追加字符串內容的最合適選擇。
file_put_contents()
file_put_contents() 函數用於把字符串寫入文件,成功返回寫入到文件內數據的字節數,失敗則返回 FALSE。
語法:
int file_put_contents ( string filename, string data [, int flags [, resource context]] )
參數 | 說明 |
---|---|
filename | 要寫入數據的文件名 |
data | 要寫入的數據。類型可以是 string,array(但不能為多維數組),或者是 stream 資源 |
flags | 可選,規定如何打開/寫入文件。可能的值:
|
context | 可選,Context是一組選項,可以通過它修改文本屬性 |
例子:
<?php echo file_put_contents("test.txt", "This is something."); ?>
運行該例子,瀏覽器輸出:
18
而 test.txt 文件(與程序同目錄下)內容則為:This is something.。
提示
- 如果文件不存在,則創建文件,相當於fopen()函數行為。
- 如果文件存在,默認將清空文件內的內容,可設置 flags 參數值為 FILE_APPEND 以避免(見下)。
- 本函數可安全用於二進制對象。
以追加形式寫入內容
當設置 flags 參數值為 FILE_APPEND 時,表示在已有文件內容后面追加內容的方式寫入新數據:
<?php file_put_contents("test.txt", "This is another something.", FILE_APPEND); ?>
執行程序后,test.txt 文件內容變為:This is something.This is another something.
file_put_contents() 的行為實際上等於依次調用 fopen(),fwrite() 以及 fclose() 功能一樣。