这是我正在使用的代码:
$fp = fopen($file, 'rb');
header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename=$fakeFileName");
header("Content-Length: " . filesize($file));
fpassthru($fp)
驻留在服务器上的实际文件也有HTML内容,所以想使用strip_tags()
,但它似乎不适用于此。尝试使用file_get_contents
+ strip_tags()
,但下载失败。
我知道这与流有关。不知道哪个函数可以帮助我摆脱文件中的html标签并提供纯文本下载。
答案 0 :(得分:1)
这应该有效:
$filedata = file_get_contents($file) ; // Get file content as string
$filedata = strip_tags($filedata) ; // strip tag in the string
header("Content-Type: application/octet-stream") ;
header("Content-Disposition: attachment; filename=$fakeFileName") ;
header("Content-Length: " . strlen($filedata)) ; // final string size
echo $filedata ; // outputs content
exit(0) ; // stop script