fpdf输出('filename.pdf','F');在浏览器上下载文件而不是将其保存在服务器上

时间:2015-03-18 11:54:23

标签: fpdf

运行代码时,文件是pdf文件被保存在浏览器中而不是保存在服务器上

fpdf Output('filename.pdf','F'); 

在浏览器上下载文件而不是将其保存在服务器上

5 个答案:

答案 0 :(得分:19)

正如the FPDF documentation中所述,您必须使用D作为output函数的参数将PDF发送到浏览器,并强制使用名称指定的名称下载文件:

Output('D','filename.pdf');

作为参考,以下是destination参数的不同值:

  

:将文件内嵌发送到浏览器。如果可用,则使用插件。当选择"另存为"时,使用名称给出的名称。生成PDF的链接上的选项    D :发送到浏览器并强制使用名称给出的名称下载文件。
   F :使用名称指定的名称保存到本地文件(可能包含路径)。
   S :将文档作为字符串返回。名称被忽略。

答案 1 :(得分:6)

以下是示例,请查看!

       $pdf->Output(F,'directory/filename.pdf'); 

请记住,如果在输出设置中使用F,则服务器上的目录需要将权限设置为777,否则它将不起作用。希望能帮助那些没有获取文件的人保存到他们的目录中。

:) Kim

答案 2 :(得分:1)

输出
string Output([string dest [, string name [, boolean isUTF8]]])

说明
将文档发送到给定的目的地:浏览器、文件或字符串。在浏览器的情况下,可能会使用 PDF 查看器或可能会强制下载。
如果需要终止文档,该方法首先调用 Close()。

参数

  • des
    发送文档的目的地。它可以是以下之一:
    I:将文件内联发送到浏览器。如果可用,则使用 PDF 查看器。
    D:发送到浏览器并强制下载名称给定的文件。
    F: 保存到本地文件,以name给定的名字(可能包含路径)。
    S:以字符串形式返回文档。
    默认值为 I。
  • 姓名
    文件名。在目的地 S 的情况下被忽略。
    默认值为 doc.pdf。
  • isUTF8
    指示名称是以 ISO-8859-1 (false) 还是 UTF-8 (true) 编码的。仅用于目的地 I 和 D。
    默认值为 false。

示例:

$pdf->Output('D', "filename.pdf", true);

字体:http://www.fpdf.org/?lang=en

答案 3 :(得分:0)

我正在使用FPDF 1.6和PHP 7.0.33,并且Output()函数不能像手册所述那样工作。

我找不到该版本的手册,而版本1.81的手册说要使用此功能,如下所示:

string Output([string dest [, string name [, boolean isUTF8]]])

但是,在我的项目中,它仅适用于以下参数顺序:

string Output( string name,string dest, boolean isUTF8)

答案 4 :(得分:0)

这对我有用。 $PaymentReference是一个字符串。

$pdf->Output('',$PaymentReference.'.pdf', false);