我有一个 PHP Yii2 Web 应用程序,它使用passthru()
. 结果passthru()
应该传递到下载的文件中,以便用户可以下载passthru()
.
例子:
如果我执行以下命令行:
$ /bin/cat /PATH/pic.jpg > output.jpg
...我得到一个文件output.jpg
,它与pic.jpg
(相同的 md5 校验和)相同
但我需要在 Web 应用程序中执行此机制:
如果我使用相同passthru()
的方法将文件发送到用户浏览器:
header("Cache-Control: private");
header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename=download.jpg");
passthru ('/bin/cat /PATH/pic.jpg');
....比我得到的download.jpg
与pic.jpg
我不同的是,这个示例案例download.jpg
小 1126 字节(图片大小约为 13MBytes),并且无法在某些图片查看器中打开图片。