Php 获取FPDF中扩展名为.pdf的输出文件

Php 获取FPDF中扩展名为.pdf的输出文件,php,fpdf,Php,Fpdf,这个问题是为那些使用过PHP库FPDF的人提出的(http://www.fpdf.org )使用PHP生成PDF文档。我正在使用php文件“my_file.php”生成一个PDF文件。我希望用户能够下载该PDF文件。但在浏览器中,可以在地址栏中将文件视为..somepath..../my_file.php。我想让他们看到一个扩展名为.pdf的文件。知道怎么做吗?您不能更改浏览器地址栏,但可以更改服务器上的地址。例如,如果您使用的是Apache,则有mod_rewrite允许您执行此类操作 如果您

这个问题是为那些使用过PHP库FPDF的人提出的(http://www.fpdf.org )使用PHP生成PDF文档。我正在使用php文件“my_file.php”生成一个PDF文件。我希望用户能够下载该PDF文件。但在浏览器中,可以在地址栏中将文件视为..somepath..../my_file.php。我想让他们看到一个扩展名为.pdf的文件。知道怎么做吗?

您不能更改浏览器地址栏,但可以更改服务器上的地址。例如,如果您使用的是Apache,则有
mod_rewrite
允许您执行此类操作

如果您的问题是,在下载文件时,浏览器希望将其另存为.php,则可以使用这些标题强制下载文件并创建文件名

header('Content-Type: application/octet-stream');
header('Content-Length: ' . FILESIZE_HERE);
header('Content-Disposition: attachment; filename=' . FILENAME.pdf_HERE);

当您创建对象,然后尝试这样输出时

$filePath = "files/cache/myPdf.pdf";
$pdf=new FPDF('p');
...
$pdf->Output($filePath,'I');
您可以更改并发送文件名以强制下载:

$pdf->Output('D');  //Force download and set filename as 'doc.pdf'
或设置您自己的文件名:

$pdf->Output('MyFilename.pdf','D');  
您的浏览器不能打开另一个带有yourpath/my_file.php的选项卡