2015-09-28 345 views
0

我正在做一些測試,因爲我是PHP和Wordpress的新手。fwrite,使用「a」多次寫入

在刷新下面的代碼運行 的functions.php

<?php 

$content = "some text here\n"; 
$fp = fopen($_SERVER['DOCUMENT_ROOT'] . "/wp-content/themes/zerif-lite-child/myText.txt","a"); 
fwrite($fp,$content); 
fclose($fp); 
?> 

其中多次寫入.txt文件! 如果我使用「wb」,它只會向文件寫入一次,但我希望此代碼追加文件,而不是每次都覆蓋文件。

我試過使用flock(),但是產生了相同的結果。

爲什麼在我追加它時多次寫入這個文件?

+1

也許是因爲你叫它9次? –

+0

而且你可以測試例如通過給你的內容添加一個隨機值:'$ content =「這裏有一些文字\ n」; $ content = mt_rand()。 '|' 。 $ content;' – VolkerK

+0

我在哪裏多次致電@MarkBaker? –

回答

0

我發現這個問題是由參數如何傳遞給我的計算機上的php頁面和第三方軟件引起的。我發現,當使用GET多行會被寫入文件,但POST工作正常。在檢查我的Apache訪問日誌後,我發現使用查詢字符串和GET時,php不止一次地從不同的代理中調用。仔細觀察我的電腦之後,我意識到我用來處理數據流的程序試圖捕獲查詢字符串上的數據。刪除該軟件後,一切正常。

+0

看來這只是部分正確的。問題再次遇到,似乎涉及參數如何傳遞到頁面。如果作爲GET傳遞,我會寫入多行。如果我通過POST,我只能得到一行。 –

+0

忽略我上面的評論。我已經迴應了我之前編輯過的答案。 –