用于pdf标题的PHP下载程序?

时间:2015-10-31 22:33:26

标签: php pdf

我有一个php文件下载器,我一直用它来下载word文档,现在我需要允许它下载pdf,它不会打开文件说明pdf已损坏。

我已经查找了内容类型,对于pdf来说似乎是正确的,但是,我不确定它可能是什么。我是否遗漏了下载pdf所需的更多标题?我对此很新,所以我不确定所有可能出现的问题。

我的代码:

if ($fd = fopen ($fullPath, "r")) {
$fsize = filesize($fullPath);
$path_parts = pathinfo($fullPath);
$ext = strtolower($path_parts["extension"]);
switch ($ext) {
    case "pdf":
    header("Content-Type: application/pdf");
    header("Content-Disposition: attachment; filename=\"".$path_parts["basename"]."\""); 
    break;
    case "docx":
    header('Content-Type: application/vnd.openxmlformats-officedocument.wordprocessingml.document');
    header("Content-Disposition: filename=\"".$path_parts["basename"]."\"");
    break;
    default;
    header("Content-type: application/octet-stream");
    header("Content-Disposition: filename=\"".$path_parts["basename"]."\"");
    break;
}

1 个答案:

答案 0 :(得分:0)

    <?php
        header("Content-Type: application/pdf");
        header("Content-Type: application/x-download");
        header('Content-disposition: attachment; filename="test.pdf"');
        header('Content-length: ' . filesize('test.pdf'));
        readfile('test.pdf');

每次都适合我。你可以尝试一下。