Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
PHP: ftp_fput - Manual
[go: Go Back, main page]

PHP
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

ftp_get_option" width="11" height="7"/> <ftp_fget
Last updated: Sun, 25 Nov 2007

view this page in

ftp_fput

(PHP 4, PHP 5)

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

説明

bool ftp_fput ( resource $ftp_stream , string $remote_file , resource $handle , int $mode [, int $startpos ] )

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

パラメータ

ftp_stream

FTP 接続のリンク ID 。

remote_file

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

handle

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

mode

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

startpos

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

Example#1 ftp_fput() の例

<?php

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

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

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

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

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

?>

変更履歴

バージョン 説明
4.3.0 startpos が追加されました。



ftp_get_option" width="11" height="7"/> <ftp_fget
Last updated: Sun, 25 Nov 2007
 
add a note add a note User Contributed Notes
ftp_fput
info at daniel-marschall dot de
20-Apr-2006 04:04
This is a function i wrote to copy a complete directory to a FTP-Server-folder.

function ftp_uploaddirectory($conn_id, $local_dir, $remote_dir)
{
  @ftp_mkdir($conn_id, $remote_dir);
  $handle = opendir($local_dir);
  while (($file = readdir($handle)) !== false)
  {
    if (($file != '.') && ($file != '..'))
    {
      if (is_dir($local_dir.$file))
      {
        ftp_uploaddirectory($conn_id, $local_dir.$file.'/', $remote_dir.$file.'/');
      }
      else
        $f[] = $file;
    }
  }
  closedir($handle);
  if (count($f))
  {
    sort($f);
    @ftp_chdir($conn_id, $remote_dir);
    foreach ($f as $files)
    {
      $from = @fopen("$local_dir$files", 'r');
      @ftp_fput($conn_id, $files, $from, FTP_BINARY);
    }
  }
}

Example:

$conn_id = @ftp_connect($server);
@ftp_login ($conn_id, $username, $passwort);
ftp_uploaddirectory($conn_id, 'mydirectory/', 'theftpdirectory/');
@ftp_quit($conn_id);

I hope you'll find it useful.
BobFrank <rsfranc at yahoo dot com dot br>
24-Aug-2003 01:10
FTP upload server 2 server
<?php
$FTP_HOST
="ftp.br.geocities.com";
$FTP_USER ="bobfrank";
$FTP_PW   ="mypasswd";
$FTP_ROOT_DIR="/";
$LOCAL_SERVER_DIR  = "images/";
$FTP_DIR = "mydir/";
$handle=opendir($LOCAL_SERVER_DIR);
while ((
$file = readdir($handle))!==false)
{
    if(!
is_dir($file)){
       
$f[]="$file";       
      }
}
closedir($handle);
sort($f);
$count=0;
$mode = FTP_BINARY; // or FTP_ASCII
$conn_id = ftp_connect($FTP_HOST);
if(
ftp_login($conn_id, $FTP_USER, $FTP_PW)){
    print
"from: ".$LOCAL_SERVER_DIR."<br>";
    print
"to: ".$FTP_HOST.$FTP_ROOT_DIR.$FTP_DIR."<br>";
   
ftp_pwd($conn_id);
   
ftp_mkdir($conn_id,$FTP_DIR);
   
ftp_chdir($conn_id,$FTP_DIR);
    foreach(
$f as $files) {
       
$from = fopen($LOCAL_SERVER_DIR.$files,"r");    
        if(
ftp_fput($conn_id, $files, $from, $mode)){
           
$count +=1;
            print
$files."<br>";
        }
    }
   
ftp_quit($conn_id);
}
print
"upload : $count files.";
?>
darian lassan at yahoo de
05-Feb-2003 03:00
If you want to pass a string containing the filename as source and not a resource handle use ftp_put() instead. Trivial but not mentioned here.

ftp_get_option" width="11" height="7"/> <ftp_fget
Last updated: Sun, 25 Nov 2007
 
 
show source | credits | sitemap | contact | advertising | mirror sites