ftp_fput

オープン中のファイルを FTP サーバーにアップロードする

説明

bool ftp_fput(
    FTP\Connection $ftp,
    string $remote_filename,
    resource $stream,
    int $mode = FTP_BINARY,
    int $offset = 0
)

ftp_fput は、ファイルポインタが指すデータを FTP サーバー上のリモートファイルへアップロードします。

パラメータ

ftp

FTP\Connection クラスのインスタンス

remote_filename

リモートファイルのパス。

stream

ローカルでオープンされているファイルのポインタ。 ファイルの終端まで進むと読み込みが終了します。

mode

転送モード。FTP_ASCII または FTP_BINARY のどちらかを指定する必要があります。

offset

リモートファイル内での、アップロード開始位置。

戻り値

成功した場合に true を、失敗した場合に false を返します。

変更履歴

バージョン 説明
8.1.0 引数 ftp は、FTP\Connection のインスタンスを期待するようになりました。 これより前のバージョンでは、リソース を期待していました。
7.3.0 mode パラメータはオプションになりました。 これより前のバージョンでは、このパラメータは必須でした。

例1 ftp_fput の例

<?php

// ファイルを読み込みモードで開く
$file = 'somefile.txt';
$fp = fopen($file, 'r');

// 接続を確立する
$ftp = ftp_connect($ftp_server);

// ユーザー名とパスワードでログインする
$login_result = ftp_login($ftp, $ftp_user_name, $ftp_user_pass);

// $file のアップロードを試みる
if (ftp_fput($ftp, $file, $fp, FTP_ASCII)) {
    echo "Successfully uploaded $file\n";
} else {
    echo "There was a problem while uploading $file\n";
}

// 接続を閉じ、ファイルを閉じる
ftp_close($ftp);
fclose($fp);

?>

参考

  • ftp_put
  • ftp_nb_fput
  • ftp_nb_put