文章摘要
在PHP下载文件时,通过设置特定的header信息可以向浏览器传递文件的详细信息。文章重点介绍了一个关键的header指令:“header("Content-Length: ***")”,该指令用于告诉浏览器文件的具体大小,便于浏览器进行缓存和压缩处理。然而,用户在实际操作中发现无法获取下载数据的大小,经过研究发现,“Accept-Length”实际上是一个误导,正确的指令应为“Content-Length”。修改后,问题迎刃而解,确保了下载功能的正常运行。
php下载文件时,我们一般会加上如下的header信息:
1 2 3 4 | header( "Content-type: application/octet-stream" ); header( "Accept-Ranges: bytes" ); header( "Content-Disposition: attachment; filename=" . $fileName ); |
其中header(“Accept-Length:”.$fileSize);是获取文件的大小,并可以返回数据给浏览器展示。
我却遇到怎么也获取不到下载数据大小的问题,虽然不影响正常的功能,但是为了追求完美,我要探个究竟。

最后才发现
1 | header( "Accept-Length:***" ); |
这其实是一个误导,其实正确的应该是
1 | header( "Content-Length:***" ); |
修改之后,果然就正确了。
© 版权声明
文章版权归作者所有,未经允许请勿转载。