私は、ファイルをダウンロードするためにphpを使ってプログラムを作成しています。 スクリプト要求が似ている:http://localhost/download.php?file=abc.zip
私はResumable downloads when using PHP to send the file?300Mを超えるダウンロードを再開できない
で述べたいくつかのスクリプトが、それは間違いなく私は、ファイル> 300Mをダウンロードしようとすると、私が得る、マルチスレッドまたはシングルスレッドのダウンロードのいずれか、300M下のファイルに対して動作しますが、使用 シングルスレッドのダウンロードで問題が発生しました。私は250Mのデータしかダウンロードしていませんでしたが、http接続が壊れているようです。 ブレークポイント ..なぜですか? それが壊れどこスクリプトのデバッグ、私はピンポイント:私は、ファイルをダウンロードするには、マルチスレッドを使用する場合、それは動作します..But
$max_bf_size = 10240;
$pf = fopen("$file_path", "rb");
fseek($pf, $offset);
while(1)
{
$rd_length = $length < $max_bf_size? $length:$max_bf_size;
$data = fread($pf, $rd_length);
print $data;
$length = $length - $rd_length;
if($length <= 0)
{
//__break-point__
break;
}
}
これは、すべての要求されたドキュメントのように思えるのみecho
またはprint
に250Mデータバッファを取得することができます