2016-07-11 10 views
1

ほとんどの問題が既存のファイルを中心にしていないか、削除プロセスが機能しないため、これに対する回答が見つかりません。PHP ftp_delete()は "Command okay"という警告を生成します

私はPHPスクリプトを使ってファイルを生成するFTPデバイスを持っています。その後、私はFTPで、ファイルを取得しようとし、その後、それを削除しようとします。

これはすべて正常に動作し、接続してファイルを取得してローカルに保存してから削除できます。 1つのことを除いて、ftp_delete()関数は警告を発します。警告
メッセージ::ftp_delete():

A PHPエラー
重大度発生しました:以下、スクリプトを実行

PHPが私に与えコマンド大丈夫

を見上げますエラーコード、それは成功したことを意味します。ファイルがFTPデバイス上で削除されたためです。

これはなぜPHPエラーを生成しますか?

乾杯。

+0

あなたは '@ ftp_delete'を使用してエラーを抑制することができます –

+1

これは確かに動作します。しかし、私はまだPHPが私にエラーを与える理由を理解したい。 – Clemenz

+0

また、これにより、If文がfalseで評価されます。これはユーザーに間違った出力を与えます。ファイルが削除されても、ユーザーにエラーメッセージが表示されます。 – Clemenz

答えて

1

RFC 959(FTP仕様)は、DELEコマンドが正常に完了すると、サーバは250ステータスコードで応答する必要があります。

PHPの実装は非常に厳しく、成功した場合でも(2xxクラス)、他のコードについても警告が表示されます。

あなたのサーバーはおそらく、200 Command okayのような別の2xxコードを使用しています。

+0

これはたくさん説明します。私は200コードで作業しなければならないと思う。ありがとうございました。 – Clemenz

関連する問題