首页 > 文章列表 > 微信对账单接口返回压缩包如何保存到服务器并提供下载?

微信对账单接口返回压缩包如何保存到服务器并提供下载?

226 2024-11-30

微信对账单接口返回压缩包如何保存到服务器并提供下载?

如何将微信对账单接口返回的压缩包保存到服务器

你在使用 php 请求微信对账单接口时遇到了问题,接口返回了一个压缩包,而你希望将其保存到服务器上后再提供给用户下载。

获取压缩包

了解压缩包是文件流还是文件下载地址是关键。

  • 文件流:如果你接收到的压缩包是一个文件流,你可以直接使用php的 file_put_contents 函数将其保存到服务器。
$content = file_get_contents('php://input'); // 获取文件流
file_put_contents('/path/to/file.zip', $content); // 保存到服务器
  • 文件下载地址:如果你接收到了压缩包的下载地址,需要先下载文件到本地,然后再将其保存到服务器。
$url = 'https://example.com/file.zip'; // 文件下载地址
$content = file_get_contents($url); // 下载文件
file_put_contents('/path/to/file.zip', $content); // 保存到服务器

提供下载

将其保存到服务器后,你可以使用 header 函数设置 content-type 和 content-disposition 标头,指示浏览器以附件形式下载文件。

header('Content-Type: application/zip');
header('Content-Disposition: attachment; filename="file.zip"');
readfile('/path/to/file.zip'); // 输出文件
来源:1732936394