当前位置: 首页 > 面试题库 >

如何在PHP中返回文件

尉迟雅昶
2023-03-14
问题内容

我有一个档案

/file.zip

用户来

/download.php

我希望用户的浏览器开始下载文件。我怎么做?readfile是否在服务器上打开文件,这似乎是不必要的事情。有没有一种方法可以在不打开服务器的情况下返回文件?


问题答案:

我想你想要这个:

        $attachment_location = $_SERVER["DOCUMENT_ROOT"] . "/file.zip";
        if (file_exists($attachment_location)) {

            header($_SERVER["SERVER_PROTOCOL"] . " 200 OK");
            header("Cache-Control: public"); // needed for internet explorer
            header("Content-Type: application/zip");
            header("Content-Transfer-Encoding: Binary");
            header("Content-Length:".filesize($attachment_location));
            header("Content-Disposition: attachment; filename=file.zip");
            readfile($attachment_location);
            die();        
        } else {
            die("Error: File not found.");
        }


 类似资料:
  • 本文向大家介绍如何在PHP中回显XML文件,包括了如何在PHP中回显XML文件的使用技巧和注意事项,需要的朋友参考一下 在PHP包装程序的帮助下,HTTP URL可以像本地文件一样使用。可以通过file_get_contents()来获取URL中的内容,并且可以将其回显。或使用readfile函数读取。 以下是执行相同操作的示例代码- 下面展示了一个替代方案- 也可以使用asXML方法。以下是示例

  • 在常规MVC控制器中,我们可以使用输出pdf。 但是如何将其更改为呢? So上也有一篇类似的文章:在ASP.NET Web API中从控制器返回二进制文件。它讨论输出一个现有的文件。但我不能让它和溪流一起工作。 有什么建议吗?

  • 问题内容: 当我将鼠标悬停在任何单词上时,总是显示一个黑框。如果PHP代码返回文本,它将显示在黑框中(应该显示)。但是,如果文本未返回,我希望它返回一个错误函数,以便以后可以更改黑盒的CSS,以使其宽度为而不是。 您可能已经发现,我遗漏了一些不重要的代码。希望有人能理解和帮助我!谢谢! 问题答案: 这正是您可以执行的操作: 在您的PHP文件中: 在您的jQuery AJAX端:

  • 问题内容: 有什么方法可以追溯到Eclipse吗?基本上,当我按照执行流程(Ctrl +单击等)在一个大项目中跳来跳去时,有没有办法追溯步骤?如果我的代码调用一个方法,然后转到方法定义,是否有组合键可以将我带回到调用代码? 问题答案: 像在网络浏览器中一样按+ 和+ 。

  • 问题内容: 我只需要一点在PHP中使用cURL和JSON的帮助,因为我从未真正做到这一点。我要完成的工作是点燃付款的回响,并限制最近一笔捐款可以先付多少。 网址:http : //api.buycraft.net/query?secret=83d043249170343dd048d4da62387f6cb39ed97f&action=payments 问题答案: 如果要使用JSON编码或解码数组,

  • 问题内容: 我想有条件地输出HTML以生成页面,那么在PHP 4+中回显HTML的多行代码段的最简单方法是什么?我需要使用Smarty这样的模板框架吗? 问题答案: 有几种方法可以在PHP中回显HTML。 1.在PHP标记之间 2.回声中 对于回声,如果您希望在HTML中使用双引号,则必须使用单引号回声,如下所示: 或者,您可以像这样逃避它们: 3. Heredocs 4. Nowdocs(从PH