我认为有几种方法可以做你想做的事。并非所有这些都能完全按照您的要求工作,但最终结果应该是相同的。
解决方案一
@shanethehat 已经发布了我的第一个可能的解决方案。您可以使用file_get_contents
通过 HTTP 调用您的 PHP 脚本并获取响应。
解决方案二
@YourCommonSense 在帖子的评论中提出了另一种可能的解决方案。您可以简单地include
使用getdoc
生成 HTML 文件的 PHP 脚本中的脚本,如下所示:
$_GET["name"] = "documentA";
echo "<a href=\"". include("getdoc.php") ."\"> Open Document A </a>";
解决方案三
或者您可以更改getdoc
脚本的工作方式。您可以使用更像这样的脚本:
header("Content-type:application/pdf");
header("Content-Disposition:attachment; filename=\"{$_GET["name"]}\"");
readfile($_GET["name"]);
你保持你的链接是这样的:<a href="mylink.com/getdoc.php?name=documentA"> Open Document A </a>
。当getdoc.php
被调用时,它将获取指定的文件并开始文件下载。
注意:您可能应该使用此方法对输入进行一些清理(删除斜线,确保文件以 .pdf 结尾等),以确保有人不会尝试获取他们不允许获取的文件。
这就是我现在想出的全部。可能有一种更聪明的方法可以做到这一点,但希望这些解决方案中的一个可以为您做到这一点。我会先尝试解决方案 2 或 3,如果它们不适合您,请使用解决方案 1。