簡體   English   中英

如何清除准備好fwrite的文本文件

[英]How to clear a text file ready for fwrite

我有一個用fwrite寫的文本文件,我如何刪除這個文本文件的所有內容,以便我可以寫一個新的。 我試圖找到另一個功能,但沒有運氣。

我正在使用的示例代碼,我想在輸入此信息之前清除它:

$string = ', {"key": "'.$info['Name'].'", "value": "'.$info['Name'].'"}';
    $fp = fopen('data_old.txt', 'a');
    fwrite($fp, $string);
    fclose($fp);

如果查看fopen的PHP文檔,您將在第二個參數中看到“模式”列表。 你正在傳遞"a" ,這意味着追加。 你想傳遞"w" ,意思是“寫”。

'a'僅供寫作; 將文件指針放在文件的末尾。 如果該文件不存在,請嘗試創建它。

'w'僅供寫作; 將文件指針放在文件的開頭,並將文件截斷為零長度。 如果該文件不存在,請嘗試創建它。

您可以在fopen更改模式參數:

$fp = fopen('data_old.txt', 'w+');

順便說一句,我使用w+以防你想要從中讀取,因為只是寫作你可以使用w

使用w選項而不是fopen中的a選項。

喜歡fopen('file.txt','w');

這會將指針放在文件的開頭而不是結尾

http://php.net/manual/en/function.fopen.php

要覆蓋現有文件,請使用帶有fopen的只寫模式,該模式將打開文件進行寫入,並將該點設置為文件的開頭,並將文件截斷為零長度:

$string = ', {"key": "'.$info['Name'].'", "value": "'.$info['Name'].'"}';
$fp = fopen('data_old.txt', 'w');
fwrite($fp, $string);
fclose($fp);

你可以用另一種方式做到這一點

$file_destination = "./your_text_file_name.txt";
unlink($file_destination);
$your_data = "ABCabc";
$handle = fopen ($file_destination, "a+");
fputs($handle, $your_data);
fclose($handle);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM