[英]replace string at specific location within a text file, using php
我有這樣的事情:
//line1 1321 precalculus 30 0
//line2 1244 accounting 30 0
在一個普通的文本文件中。
我如何將第1行上的數字30
更改為29
,將0
更改為1
等。
對於最簡單的情況,例如您所描述的情況,假設您知道要更改的行以及要更改的行,則可以這樣做:
// Get text file contents as array of lines
$txt = file('text.txt');
// Make the change to line 1
$txt[0] = "1321 precalculus 29 1";
// Put the lines back together, and write back into txt file
file_put_contents('text.txt', implode("\n", $txt));
根據您實際要執行的操作,此方法可能無效。 本質上,它只是按行分割文本文件,然后用新數據覆蓋第1行,然后將整個內容重寫回文本文件。 同樣,根據文件的大小和您要真正完成的工作,這可能不是最佳解決方案。 但這確實可以滿足您的描述,並且可能是一個不錯的起點。
更新正如Jorg的評論中指出的那樣,不需要分兩步分解文件內容,因為file()
可以一步完成相同的任務。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.