我正在尝试在php中显示pdf文件,我用过:
<html>
<head>
<style type="text/css">
#myiframe {width:600px; height:100%;}
</style>
</head>
<body>
<div id="scroller">
<iframe name="myiframe" id="myiframe" src="xml.pdf">
</div>
</body>
</html>
它在html中运行良好,但是当我想将此代码用于php文件时,它什么都不显示,只是尝试下载pdf文件。 有人能帮助我吗?
答案 0 :(得分:23)
可以使用很多选项:(都经过测试)。
以下是两种方式。
header("Content-type: application/pdf");
header("Content-Disposition: inline; filename=filename.pdf");
@readfile('path\to\filename.pdf');
或:(请注意转义的双引号)。在为其指定名称时也需要使用相同的内容。
<?php
echo "<iframe src=\"file.pdf\" width=\"100%\" style=\"height:100%\"></iframe>";
?>
I.e。:name="myiframe" id="myiframe"
需要更改为:
PHP中的 name=\"myiframe\" id=\"myiframe\"
。
请务必查看:this answer on SO了解有关此主题的更多选项。
脚注:尝试在Windows 8中查看PDF文件时存在已知问题。如果未安装浏览器插件,则安装Adobe Acrobat Reader是查看这些类型文档的更好方法。< / p>
答案 1 :(得分:5)
请尝试以下代码
<?php
$file = 'dummy.pdf';
$filename = 'dummy.pdf';
header('Content-type: application/pdf');
header('Content-Disposition: inline; filename="' . $filename . '"');
header('Content-Transfer-Encoding: binary');
header('Content-Length: ' . filesize($file));
header('Accept-Ranges: bytes');
@readfile($file);
?>
答案 2 :(得分:0)
从https://pdfobject.com/下载PDFObject库并查看以下代码:我希望它能为您提供帮助。
<!DOCTYPE html>
<html>
<head>
<title>Pdf Read</title>
<style>
.pdfobject-container { height: 500px;}
.pdfobject { border: 1px solid #666; }
</style>
<script src="pdfobject.min.js"></script>
</head>
<body>
<div id="example1"></div>
<script>PDFObject.embed("pdfread.pdf", "#example1");</script>
</body>
</html>
答案 3 :(得分:0)
if(isset($_GET['content'])){
$content = $_GET['content'];
$dir = $_GET['dir'];
header("Content-type:".$content);
@readfile($dir);
}
$directory = (file_exists("mydir/"))?"mydir/":die("file/directory doesn't exists");// checks directory if existing.
//the line above is just a one-line if statement (syntax: (conditon)?code here if true : code if false; )
if($handle = opendir($directory)){ //opens directory if existing.
while ($file = readdir($handle)) { //assign each file with link <a> tag with GET params
echo '<a target="_blank" href="?content=application/pdf&dir='.$directory.'">'.$file.'</a>';
}
}
如果您单击链接,将出现一个带有pdf文件的新窗口
答案 4 :(得分:0)
从数据库显示pdf文件的简单方法,我们可以下载。
$ resume是来自数据库的pdf文件名。
../resume/filename是存储文件的文件夹的路径。
<a href="../resumes/<?php echo $resume; ?>"/><?php echo $resume; ?></a>
答案 5 :(得分:0)
使用pdf或img时容易
return (in_Array($file['content-type'], ['image/jpg', 'application/pdf']));