此问题寻求一种从 FTP 服务器检索文件并将其直接发送到用户浏览器的有效方法,绕过本地存储和重定向。
提供的 PHP 函数 getFtpFileContents 将文件提取到内存中,但需要后续手动步骤将其发送到浏览器。要消除中间存储的需要,只需删除输出缓冲代码:
ftp_get($conn_id, "php://output", $file, FTP_BINARY);
If如果您希望包含 Content-Length 标头,则需要先查询文件大小:
$size = ftp_size($conn_id, $file_path);
header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename=" . basename($file_path));
header("Content-Length: $size");
ftp_get($conn_id, "php://output", $file_path, FTP_BINARY);
请记住将错误处理合并到代码中以实现稳健的操作。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3