2011-05-27 66 views
0

我有下面的代碼序列:無法保存文本文件

$fp = fopen('script.sh', 'wt'); 
fwrite($fp, 'some text'); 
fclose($fp); 

現在,這個應該寫some text到script.sh,簡單明瞭,有一段工作。但是從昨天開始script.sh總是空的,儘管some text根本不是空的。有趣的是,沒有錯誤返回。另外,如果我手動鍵入script.sh內的某些內容,然後運行代碼script.sh再次爲空。

權限爲777。該文件是正確的(如果我刪除它說,該文件不存在)。

+2

這是您寫入文件的唯一地方嗎?這聽起來像別的東西可能會寫入該文件並刪除內容 – Alex 2011-05-27 08:16:20

+1

什麼'fwrite($ fp,'some text');'返回? – 2011-05-27 08:18:44

+0

不......我找到了答案,是一種愚蠢的:))。我的空間不足,無法保存文件。所以...對一個蹩腳的帖子感到抱歉。忘記檢查最基礎的事情。 – zozo 2011-05-27 08:23:55

回答

1

沒有FOPEN模式「與wt」,所以它會默認爲WRITE如在PHP文檔定義:

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

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

打開,以便正確地將數據寫入到文件或者APPEND(a)或寫(w)模式的文件。

0

'w+'而不是'wt'

0

空間不足,文件無法再保存。現在可以工作了。