用PHP寫入文件
回答
你應該在你希望字符串是配置輸入註釋,這樣你就可以逐行讀取配置文件中的行,然後選擇了指定的註釋時,則刪除註釋和把字符串,然後一個新的註釋文件就像這樣的:
$handle = fopen("config.cfg", "r+");
$i = 0;
if ($handle) {
while (($line = fgets($handle)) !== false) {
if ($line == "//[insert comment here]") {
$lines = file("config.cfg" , FILE_IGNORE_NEW_LINES);
$lines[$i] = 'replace this string with your string' + "\n \n //[insert comment here]";
file_put_contents($filename , implode("\n", $lines));
}
i++;
}
fclose($handle);
} else {
// error opening the file.
}
看起來它會工作完美,但即時通訊接收HTTP錯誤500 –
在您的第一行php請插入此: – martinkors
ini_set('display_errors',1); – martinkors
當你是新來的PHP,最簡單的就是將整個文件讀入一個數組,並拼接在您需要的線
// Read the file into an array line by line
$aLinesFromFile = file("config.cfg");
// Count the number of lines
$numLinesInFile = count($aLinesFromFile)
// Inject your text
array_splice($aLinesFromFile , $numLinesInFile-3, 0, "New Line");
// To inject multiple lines
// array_splice($aLinesFromFile , $numLinesInFile-3, 0, ["New Line 1", "New Line 2", "New Line 3"]);
// Save to the file
file_put_contents("config.cfg", implode("\n", $aLinesFromFile);
然而,這會對大文件造成問題,所以更好的選擇是打開文件以讀取並附加(+ a),fseek()從最後(例如, 4000個字符)並讀取結束,找到是否包含3個換行符,fseek()轉發到正確的位置,然後fwrite()您要添加的內容。這樣你在內存中只有4000個字符,而不是整個文件。但它顯然有點複雜。
中刪除print_r命令如果我把你的代碼,我收到錯誤500,PHP的東西是錯誤的。 http://pastebin.com/yGxpVun9 –
有一個缺失的大括號,以及它的外觀缺少分號。你應該可以自己調試。 StackOverflow上的人員將爲您提供概念,可以工作的想法以及需要進行調試的想法。上面的例子是在一個小編輯中現場寫的。我花了5分鐘或更長時間來了解你的問題並作出迴應。如果你不能花費30秒鐘的時間來調試錯誤,那我爲什麼要這麼做?請閱讀http://stackoverflow.com/questions/2687730/how-can-i-make-php-display-the-error-instead-of-giving-me-500-internal-server-er – Robbie
- 1. 寫入JSON文件用PHP
- 2. 使用PHP寫入文件
- 3. 用PHP寫入文件
- 4. 使用PHP文件寫入
- 5. PHP寫入文件
- 6. 寫入PHP文件?
- 7. php。寫入文件
- 8. 寫入.php文件?
- 9. 寫入文件PHP
- 10. PHP寫入文本文件
- 11. 使用PHP代碼寫入PHP文件?
- 12. 用PHP創建+寫入文本文件
- 13. 通過PHP寫入文件
- 14. PHP寫入文件多行
- 15. php文件寫入問題
- 16. PHP同時文件寫入
- 17. PHP寫入XML文件
- 18. Php寫入文件 - 空?
- 19. PHP不能寫入文件
- 20. PHP:從gunzip寫入文件
- 21. PHP寫入.ini文件
- 22. PHP - 如何寫入文件?
- 23. 併發文件寫入PHP
- 24. PHP:寫入當前文件
- 25. Php MongoDB寫入CSV文件
- 26. unity3d寫入csv文件php
- 27. PHP - 寫入CSV文件
- 28. PHP:文件寫入問題
- 29. PHP沒有寫入文件
- 30. 加速PHP文件寫入
歡迎來到SO。 請閱讀[我可以問哪些主題](http://stackoverflow.com/help/on-topic) 和[如何提出一個好問題](http://stackoverflow.com/help/how-to - 問) 和[完美的問題](http://codeblog.jonskeet.uk/2010/08/29/writing-the-perfect-question/) 以及如何創建[最小,完整和可驗證的例子] (http://stackoverflow.com/help/mcve) – RiggsFolly
也請不要發佈代碼的圖片。發佈文本 – RiggsFolly
使用'file()'將文件讀入一行數組。然後你可以用'splice()'插入到數組中,使用'implode()'將它們連接成一個字符串,然後用'file_put_contents()'將該字符串寫入文件。 – Barmar