mixed Net_FTP::get (
string $remote_file
,
string $local_file
,
bool $overwrite = false
,
int $mode = null
)
スクリプトを動作させているコンピュータに、FTP サーバからファイルを ダウンロードします。
string $remote_file
-
ダウンロードしたいファイル名。絶対パス、あるいは相対パスで指定します
(ディレクトリ名ではありません!
Net_FTP::getRecursive() 参照)。
string $local_file
-
ダウンロードしたファイルの保存先(ファイル名を含みます。
ディレクトリではありません!)。絶対パス、あるいはスクリプトの
ディレクトリからの相対パスで指定します(注意:include を利用している
場合、スクリプトのディレクトリはインクルード元のファイルがある場所と
なります!)
bool $overwrite = false
-
ローカルファイルが存在した場合に、それを上書きするかどうか。
指定しなかった場合、ファイルは上書きされません。
int $mode = null
-
定数 FTP_ASCII あるいは
FTP_BINARY のどちらかを指定しなければなりません。
指定されなかった場合、ファイルの拡張子から(extensions.ini によって)
モードを決定します。それにも失敗した場合は標準転送モード
(mode プロパティの値)が用いられます。
mixed
- 成功時には true 、それ以外は PEAR::Error
get から戻されるエラーにはいくつかの種類があります。エラー番号は (現時点では)不定で、エラーメッセージについての情報は得られません。 発生する可能性のあるエラーは以下のとおりです。
エラーメッセージ | 説明 | 対処方法 |
---|---|---|
Local file '$local_file' exists and may not be overwriten. | 指定した場所にはすでにファイルが存在し、上書きできません。 | $overwrite パラメータを true に設定します。 |
Local file '$file' is not writeable. Can not overwrite. | ローカルファイルを上書きするように指定しましたが、 上書きできませんでした。 | おそらくファイルを上書きする権限がないのでしょう。 ファイルのパーミッションを確認してください。 |
File '$remote_file' could not be downloaded to '$local_file'. | リモートファイルのダウンロードに失敗しました。 | いくつかの原因が考えられます:リモートファイルが存在しない、 ダウンロード先ローカルディレクトリが存在しない、あるいは ローカルディレクトリへの書き込み権限がないなど。 |
This function can not be called statically.
get() の使用
<?php
var_dump($test->get('foo/bar.zip', '/tmp/downloaded.zip', true, FTP_BINARY));
?>