我正在使用 amazon s3 API 并将客户端设置为流式读取。使用 file_get_contents("s3://{bucket}/{key}") 对我来说工作正常,它读取文件的完整数据(我在本地系统上使用视频文件和测试)。但是,我正在尝试优化脚本使用的内存,从而尝试按块读取和返回数据,如下所示:
$stream = @fopen("s3://{bucket}/{key}", 'r');
$buffer = 1024;
while(!feof($stream)) {
echo @fread($stream, $buffer);
flush();
}
这不适用于我的本地系统。我只是想知道使用这种技术可能会出现什么问题。通过搜索,我发现这也是一个非常广泛使用的技术。因此,如果有人可以就此处可能出现的问题或任何其他方法提出任何建议,我应该尝试一下,这将非常有帮助。谢谢。