2016-07-11 87 views
1

我無法找到任何答案,因爲大多數問題都圍繞不存在的文件或刪除進程無效。PHP ftp_delete()生成警告「Command okay」

我有一個FTP設備,我用PHP腳本生成一個文件。之後,我嘗試FTP,獲取文件,然後刪除它。

這一切工作正常,我可以連接,獲取文件並保存在本地,然後刪除它。除了一件事情,ftp_delete()函數會導致警告。

PHP給我的下面,執行腳本時:

遇到

一個PHP錯誤
嚴重性:警告
消息:FTP_DELETE():命令行不行

我擡頭錯誤代碼,這意味着它是成功的。這是因爲該文件在FTP設備上被刪除。

那麼,爲什麼這會產生一個PHP錯誤?

乾杯。

+0

你可以通過使用'@ ftp_delete'來抑制錯誤 –

+1

確實有效。但我仍然想知道爲什麼PHP給了我這個錯誤。 – Clemenz

+0

此外,這將導致我的If語句評估爲false。這給用戶輸出錯誤。即使文件被刪除,用戶也會收到錯誤消息。 – Clemenz

回答

1

RFC 959(FTP規範)規定,在成功完成DELE命令後,服務器應迴應250狀態碼。

PHP FTP的實現非常嚴格,即使它表示成功(2xx類),也會對其他代碼發出警告。

您的服務器可能使用其他2xx代碼,如通用200 Command okay

+0

這解釋了很多。我想我將不得不使用200代碼。謝謝。 – Clemenz