有一种简单的方法可以检查上传文件时的进度。只需使用 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);
?>
这将每次循环运行时打印出已传输的字节数。将其转换为百分比很简单,只需将已传输的字节数除以文件的总大小即可。