我有一个非常简单的脚本来强制从S3下载。
$headers = $this->s3->getObjectHeaders(array('Bucket' => $bucket, 'Key' => $s3name));
$headerArray = $headers->toArray();
// force download in this case
header("Content-disposition: attachment; filename=\"{$filename}\"");
if (ob_get_level()) {
ob_end_flush();
}
flush();
readfile("s3://{$bucket}/{$s3name}");
exit;
return;
如果我删除“退出”,则生成的下载文件最后会包含额外的内容。
对于JSON文件,它会添加{}。
如果读取文件后有错误,则错误的HTML错误内容将附加到下载的文件中。
我可以通过简单地添加退出来阻止这个不需要的操作。但是,这使我无法在那时再进行任何处理。
我已经尝试过ob_end_flush()等,但无济于事。
有什么想法吗?