PHP使用內建函數file_put_contents寫入檔案及追加內容的方法

來源:互聯網
上載者:User
這篇文章主要介紹了PHP使用內建函數file_put_contents寫入檔案及追加內容的方法,結合執行個體形式分析了file_put_contents函數通過參數設定實現寫入檔案及追加內容的相關技巧,非常簡單實用,需要的朋友可以參考下

本文執行個體講述了PHP使用內建函數file_put_contents寫入檔案及追加內容的方法。分享給大家供大家參考,具體如下:

以追加形式寫入內容

當設定 flags 參數值為 FILE_APPEND 時,表示在已有檔案內容後面追加內容的方式寫入新資料:

複製代碼 代碼如下:

<?phpfile_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。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.