本文實例講述了PHP使用內置函數file_put_contents寫入文件及追加內容的方法。分享給大家供大家參考,具體如下:
以追加形式寫入內容
當設置 flags 參數值為 FILE_APPEND 時,表示在已有文件內容後面追加內容的方式寫入新數據:
復制代碼 代碼如下:
<?php
file_put_contents("test.txt", "This is another something.", FILE_APPEND);
?>
file_put_contents() 的行為實際上等於依次調用 fopen(),fwrite() 以及 fclose() 功能一樣。
FILE_APPEND:在文件末尾以追加的方式寫入數據
參數說明:
參數
說明
filename 要寫入數據的文件名
data 要寫入的數據。類型可以是 string,array(但不能為多維數組),或者是 stream 資源
flags 可選,規定如何打開/寫入文件。可能的值: 1.FILE_USE_INCLUDE_PATH:檢查 filename 副本的內置路徑
2.FILE_APPEND:在文件末尾以追加的方式寫入數據
3.LOCK_EX:對文件上鎖
context 可選,Context是一組選項,可以通過它修改文本屬性
PHP 內置函數 file_put_contents 用於寫入文件:
file_put_contents 函數最簡單的寫法,可以只用兩個參數,一個是文件路徑,一個是要寫入的內容,語法如下:
復制代碼 代碼如下:file_put_contents(filepath,data)
如果文件不存在,file_put_contents 函數會自動創建文件;如果文件已存在,原有文件被重寫。
你可以利用 file_put_contents 函數創建並寫入一個新文件,或者重寫一個原有文件。
下面是一個使用 file_put_contents 函數的 PHP 代碼示例:
<html> <body> <?php $path ="C:\\blabla\\filesys\\one.txt"; $content = "one for all"; file_put_contents($path,$content); if (file_exists($path)) {echo "ok";} else {echo "ng";} ?> </body> </html>
該 PHP 代碼示例會創建一個路徑為 C:\blabla\filesys\one.txt 的文件,該文件的內容是 one for all 。
PHP 內置函數 file_put_contents 用於追加內容:
如果你想在一個已有文件上追加內容,你也可以使用file_put_contents 函數,只需要加一個參數即可。
復制代碼 代碼如下:file_put_contents(filepath,data,flags)
當 flags 的值為 FILE_APPEND 時,表示在已有文件上追加內容。即:第三個參數flags實現將內容追加到文件的後面,如果沒有這個參數會直接覆蓋以前的數據。
比如我們要在上面示例的C:\blabla\filesys\one.txt 文件上追加內容,我們可以這樣寫:
<html> <body> <?php $path ="C:\\blabla\\filesys\\one.txt"; $content = " all for one"; file_put_contents($path,$content,FILE_APPEND); if (file_exists($path)) {echo "ok";} else {echo "ng";} ?> </body> </html>
執行該 PHP 文件之後,我們再看 C:\blabla\filesys\one.txt 文件,發現文件內容增加了,變成了:
one for all all for one
file_put_contents 函數返回寫入文件的字節數 (number of bytes) ,如果出錯,返回 FALSE。
希望本文所述對大家PHP程序設計有所幫助。