我有一个 php 脚本,它打开一个下载对话框到服务器上的文件。它在大多数情况下都有效,但是如果文件的文件名中有“&”,那么当您尝试在客户端计算机上打开它时,它就会损坏。我尝试了不同的文件类型,xls、xlsx 和 pdf 都已损坏(这就是我尝试过的全部)。有想法该怎么解决这个吗?代码如下。
header("Cache-control: private");
header("Content-Type: " . $oFile->getMimeType());
header("Content-Length: " . $oFile->getFileSize());
header("Content-Disposition: attachment; filename=" . $fileName);
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Pragma: public");
编辑:当我在文本编辑器(Notepad++ 或 Sublime Text)中打开文件时,文件中没有显示任何内容。