2013-08-01 44 views
1

我在我的Yii控制器中有以下代码。当我输入控制器的URL(或点击一个带有控制器URL的链接)时,文档会加载,但不会加载内嵌(换句话说,它会提示下载文件)。在浏览器窗口加载文件

另外通常情况下,直接链接到文件打开嵌入在浏览器窗口中的文件,所以我能够正常执行此操作。

如何在浏览器窗口中打开文件,而不是使用下面的代码强制下载?

$filename = Yii::getPathOfAlias('webroot') . '/docs/brochure.pdf'; 
$handle = fopen($filename, "r"); 
$contents = fread($handle, filesize($filename)); 
fclose($handle); 

header('Content-Transfer-Encoding: binary'); 
header('Content-length: '. strlen($contents)); 
header('Content-Type: application/pdf'); 
header('Content-Disposition: attachment; filename=your_brochure.pdf'); 

echo $contents; 
+0

既然你找到你的答案,你可以把它写上去,并接受它作为回答 - [这完全是鼓励(HTTP:/ /blog.stackoverflow.com/2011/07/its-ok-to-ask-and-answer-your-own-questions/)! – Hannele

回答

1

我能解决这个问题。罪魁祸首就是这条线

header('Content-Disposition: **attachment**; filename=your_brochure.pdf'); 

我改成

header('Content-Disposition: **inline**; filename=your_brochure.pdf')