我想在PHP中使用header()自定义

站在巨人的肩膀上,我已成功使用header()拼出脚本在我的内联网上发布pdf文档,

我的显示代码:

<?php
require_once "includes/IniFile.php";
include_once "includes/process.php";
$MyData['ini'] = IniFile::getSettings();
foreach ( $_POST as $key => $value )
   { $fn = $key; }
$fn = str_replace("|sp|"," ",$fn);
$fn = str_replace("|dt|",".",$fn);
$ed = explode('!',$fn) ;
$MyData['ini']['pathMask'] = str_replace('|DEPT|', dptdir($ed[1], $MyData['ini'] ['departments']), $MyData['ini']['pathMask']);
$MyData['ini']['pathMask'] = str_replace('|FLDR|', subdir($ed[2], $MyData['ini'] ['folders']), $MyData['ini']['pathMask']);
$fn ='';
$file = $MyData['ini']['pathMask'].$ed[0];
header('Content-type: application/pdf');
header('Content-Disposition: inline; filename="'.$fn.'"');
header('Content-Transfer-Encoding: binary');
header('Content-Length: ' . filesize($file));
@readfile($file);
?>

一切运作良好,但我希望包含.pdf的新页面具有 对应于要发布的文档名称.

这可能吗?

谢谢 – 克里斯.

最佳答案 您应该呈现正常页面并将PDF嵌入到iframe中,而不是丢弃标题.通过这种方式,您可以获得标题,PDF仍然是内联的.

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>My great title for the PDF</title>
<style type="text/css">
html, body {
margin: 0;
padding: 0;
border: 0;

height: 100%;
overflow: hidden;
}
iframe {
width: 100%;
height: 100%;
border: 0
}
</style>
</head>

<body>

  <iframe src="yourpdfname.pdf"></iframe>

</body>
</html>
点赞