ホームページ  >  記事  >  バックエンド開発  >  FTP サーバーからローカル コンピューターにファイル ツリーをダウンロードする PHP プログラム_PHP チュートリアル

FTP サーバーからローカル コンピューターにファイル ツリーをダウンロードする PHP プログラム_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-21 15:48:201146ブラウズ

コードをコピーします コードは次のとおりです:

/*
ftp_nlist()対応を使用する場合、返される配列値はサーバーによって異なる2種類になります
a:個別のファイル名
b:インクルードされたディレクトリのファイル名。
悪用された場合は変更するようご注意ください。
*/
function download_file($dir,$fc,$_FILE_)
{
$fn=ftp_nlist($fc,".");// ディレクトリ (サブディレクトリを含む) のファイル名をリストします。 、配列
$size=sizeof($fn);
$dir=($dir=="")?$dir:('/'.$dir); に格納されます。
echo $_FILE_."
";
for($i=0;$i<$size;$i++)
{
if(ereg('^[a-zA-Z0-9_] + ',$fn[$i])) //ファイルとディレクトリを抽出し、これら 2 つのディレクトリを除外します
{
if(ereg('^[a-zA-Z0-9_]+([a -zA-Z0-9- ]*.*)(.+)',$fn[$i])) //ファイルの場合は直接ダウンロード
{
if(ftp_get($fc,$fn[$i], $fn[ $i],FTP_BINARY))
{
echo "
Download".getcwd()."/".$fn[$i]."Success

}
else
; {
echo "
Download".getcwd()."/".$fn[$i]."Failed
"
}
}// ファイルのダウンロード終了
else // "これはディレクトリです。ディレクトリを入力してからファイルを読み取ります";
{
if(!file_exists($fn[$i]))
mkdir($fn[$i], 0700);//ローカル Ifディレクトリがマシン上に存在しない場合は、ディレクトリを作成します
if(ftp_chdir($fc,$fn[$i]))
chdir($fn[$i])
echo "現在のディレクトリは次のとおりです:".getcwd( ). "
";//現在のディレクトリが見やすくなります
download_file($fn[$i],$fc,$_FILE_);//ファイルをダウンロードするディレクトリを再帰的に入力します
}
} //ファイル抽出、ディレクトリ終了
}//ループ終了
ftp_cdup($fc);//FTPサーバーは上のディレクトリに戻ります
chdir(dirname($_FILE_))
}//download——file(); function ends
$_FILE_ ="ローカル マシンの絶対アドレス";//たとえば、c:/download/ ではなく、c:/download
$hostname="サーバー名";
$loginname="ユーザー名"; ="ユーザーパスワード";
$fc=ftp_connect($hostname,"21") または die("$hostname に接続できませんでした")
$fc_rw=ftp_login($fc,$loginname,$password); ftp_set_option($fc,FTP_TIMEOUT_SEC ,100000);//タイムアウトを設定します
$dir="";chdir($_FILE_);//ローカルマシンの絶対アドレスディレクトリを入力します
download_file($dir,$fc,$_FILE_);
ftp_quit($fc);
//サーバーからファイルツリーをダウンロードするプログラム


皆さんのお役に立てれば幸いです、ありがとう



http://www.bkjia.com/PHPjc/319789.html

www.bkjia.com

http://www.bkjia.com/PHPjc/319789.html技術記事次のコードをコピーします。 /* ftp_nlist() を通信に使用する場合、返される配列値には 2 つのタイプがあります。サーバーによって異なります。 a: 個別のファイル名 b: ディレクトリを含むファイル名。 動いたら…
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。