ホームページ > php教程 > php手册 > FTP サーバーからローカル コンピューターにファイル ツリーをダウンロードする PHP プログラム

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

WBOY
リリース: 2016-06-13 12:25:21
オリジナル
1126 人が閲覧しました

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


/*
ftp_nlist() 対応を使用すると、返される配列値は次のようになります。 2種類: サーバーごとに異なります
a: 個別のファイル名
b: ディレクトリを含むファイル名。
不正使用された場合は、これを変更するように注意してください。
*/
function download_file($dir,$fc,$_FILE_)
{
$fn=ftp_nlist($fc,".");//columnディレクトリ (サブディレクトリを含む) のファイル名は、配列
$size=sizeof($fn);
$dir=($dir=="")?$dir:('/' . $dir);
$_FILE_=$_FILE_.$dir;
echo $_FILE_."
"; )
{
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 "< ; br/>ダウンロード ".getcwd()."/".$fn[$i]."成功しました
";
}
else
{
echo "< ;br/>Download ".getcwd()."/".$fn[$i]."Failed
";
}
}//ファイルのダウンロードは終了します
else / /"これはディレクトリです。ディレクトリを入力してからファイルを読み取ります";
{
if(!file_exists($fn[$i]))
mkdir($fn[$i], 0700); // ディレクトリがローカル マシンに存在しない場合は、
if(ftp_chdir($fc,$fn[$i]))
chdir($fn[$i]); 🎜>echo "Current The directory is: ".getcwd()."
";//現在のディレクトリの表示が見やすくなります
download_file($fn[$i],$fc,$_FILE_) ;//再帰エントリ このディレクトリ内のファイルをダウンロードします
}
}//ファイルを抽出します、ディレクトリの終わり
}//for ループの終わり
ftp_cdup($fc);//ftp サーバーが戻ります上位ディレクトリへ
chdir(dirname ($_FILE_));
}//download——file() 関数終了
$_FILE_="ローカル マシンの絶対アドレス";//例: /download、これは行わないでください。 c:/download/
$hostname="ユーザー名";
$password="ユーザーパスワード"; =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);
//サーバーからファイルツリーをダウンロードするプログラム
?>


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

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート