如果文件名中有空格,则强制下载php返回okb

时间:2019-05-08 10:39:42

标签: php path

我正在尝试使用PHP强制从服务器下载mp3文件。

我使用的是绝对路径,例如my-domain.../my-file.mp3

这是我用来下载文件的代码。

  header("Content-Type: application/octet-stream");
  header("Content-Disposition: attachment; filename=". $_GET['name']);
  $path = urldecode($_GET['path']);
  if(isset($path))readfile($path);

如果文件路径中有一些空格,它将下载一个0kb的文件,我不知道为什么,我需要帮助,因此,如果文件路径为my-domain.../my-file.mp3,则效果很好。如果是这样的my-domain.../my file.mp3,它将下载文件,但文件大小为0kb。

我已经尽力想了一切,但我想不通。

谢谢。

1 个答案:

答案 0 :(得分:0)

如果文件名包含空格,则应在qoutes中输出名称,如下所示:

header('Content-Disposition: attachment; filename="'. $_GET['name'] . '"');