有一种简单的方法可以检查上传文件时的进度。只需使用 ftell 函数来监视文件句柄中的位置。ftp_nb_fput 会随着文件的传输增加位置。
示例
<?
$fh = fopen ($file_name, "r");
$ret = ftp_nb_fput ($ftp, $file_name, $fh, FTP_BINARY);
while ($ret == FTP_MOREDATA) {
print ftell ($fh)."\n";
$ret = ftp_nb_continue($ftp);
}
if ($ret != FTP_FINISHED) {
print ("上传错误\n");
exit(1);
}
fclose($fh);
?>
这将打印出到目前为止传输的字节数,每次循环运行时都会打印。将其转换为百分比只是将传输的字节数除以文件的总大小的问题。