FTPファイルのダウンロードスクリプトが機能しています。
ダウンロードするファイルは、1日あたり約2〜4GBになります。
ファイルのパーセントを取得する方法があるかどうか疑問に思っていましたか?
私はphp.netとここを調べましたが、同様の質問は見つかりませんでした。むしろ、自分よりもはるかに賢い人に質問すると思います。
ダウンロードのどこにあるかを確認する関数があるかどうかを考えていましたがftp_get
、新しいパーセントを表示するために数秒ごとにバッファーをフラッシュする機会をなくすために、最初に完了する必要があるため、関数を見つけることができませんでした。
誰?
これが私のコードです:私はその上にあるすべての変数を隠しました。
$conn_id = ftp_connect($ftp_server);
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
if (ftp_get($conn_id, $local_file, $server_file, FTP_BINARY)) {
echo "Successfully written to $local_file\n";
} else {
echo "There was a problem\n";
}
ftp_close($conn_id);
編集:
追加ftp_nb_get
しました。これがそのためのコードです。それはうまくダウンロードし続けます、ただそれをブラウザにエコーアウトしません。
$ret = ftp_nb_get($conn_id, $local_file, $server_file, FTP_BINARY, $size);
while ($ret == FTP_MOREDATA) {
echo round((filesize($local_file)/$server_size)*100)."%\n";
$ret = ftp_nb_continue($conn_id);
}