2013-08-16 104 views
1

我想用PHP輸入輸入文本位置的文本文件。我嘗試使用fseek來指出輸入數字的位置,但它保存爲空文件。我想寫入輸入的插入位置上的文本文件,使用PHP

<?php 
$testData = "testdata"; 
$testPosition = 3; 
$fileReference = fopen("test.txt", "w"); 
fseek($fileReference, $testPosition); 
fwrite($fileReference, $testData); 
fclose($fileReference); 
?> 

我怎麼會拿到劇本到WITE到文本文件在正確的指定位置?

+0

我試圖回答你的問題。它能解決你的問題嗎? – Mic1780

+0

是的,謝謝。儘管如此,現在當我查看文本文件後,它將所有內容寫入單行。我猜新線字符的解釋方式存在一些問題。 –

+1

對於PHP中的新行,我個人有一個名爲'$ nL'的變量,它實際上只是一個新行 '$ nL ='';' – Mic1780

回答

1

w標誌只允許寫入文件。嘗試用r+標誌替換w標誌。這將允許讀取/寫入文件而不截斷文件。讀/寫是需要的,以便您可以搜索您的脫字符並將其寫入所在位置。有關fopen功能的更多信息,請參閱php.net: fopen()

+0

謝謝,沒有想到這一點。 –

0

w標誌有此功能:

'W' 寫入方式打開;將文件指針放在文件的開頭,並將文件截斷爲零。如果文件不存在,請嘗試創建它。

這可能是你爲什麼得到一個空文件。

但是,在我的本地服務器上,這工作正常。這讓我覺得你的權限可能不正確。例如,您可能沒有寫權限。請嘗試並確保您擁有該文件的正確權限。