ZipStream ( https://github.com/Grandt/PHPZip ) を使用して、Kohana 3.3 で zip ファイルの作成とストリーミングをオンザフライで実装しようとしています。最初のイメージが zip に追加されるとすぐに zip ファイルがストリーミングされると想定しましたが、zip ファイル全体が作成されてユーザーに送信されるまで、ダウンロードが停止することがあります。
<?php defined('SYSPATH') or die('No direct script access.');
class Controller_Download extends Controller {
public function action_images()
{
require Kohana::find_file('vendor', 'ZipStream');
$zip = new ZipStream("images.zip");
foreach($images as $image)
{
$zip->addLargeFile($image);
}
$zip->finalize();
exit;
}
}