有关的:
我正在寻找其他主题中描述的方法的组合。我可能需要以小块读取文件(从 URL) ,将它们通过管道传输到 proc_open zip 命令的 STDIN,获取输出并将其刷新到客户端。
我需要做什么:
- 从存储服务器的 URL 读取文件流
- 在网络服务器上即时压缩
- 使用未知大小的内容配置将其作为下载提供到网络浏览器(毕竟它是一个流)。
我不能做的:
- 在网络服务器上存储文件
- 在存储服务器上运行代码
- 使用大量内存
- 让客户端等待下载
因此,数据的刷新需要在远程块读取仍在进行中时开始。
这在PHP中可能吗?我觉得这在提供更多回调/异步功能的语言中会容易得多,但在这种情况下我坚持使用 PHP。
非常欢迎任何示例或一些粗略的代码!