外部URL的PHP​​ readfile()

use*_*311 9 php readfile

我可以在readfile()中使用外部URL吗?

    header('Content-type: application/pdf');
    header('Content-Transfer-Encoding: binary');
    header('Content-Disposition: inline; filename="'.$file.'" ');
    //header('Content-Length: ' . filesize("http:...z/pub/".$file.'.pdf'));
    @readfile("http://...z/pub/".$file.'.pdf');
Run Code Online (Sandbox Code Playgroud)

Jac*_*kin 20

关于readfile州的PHP手册:

如果已启用fopen包装器,则URL可用作此函数的文件名.有关如何指定文件名的更多详细信息,请参阅fopen().请参阅支持的协议和包装器,以获取有关各种包装器具有哪些功能的信息的链接,有关其使用的说明以及它们可能提供的任何预定义变量的信息.

作为替代方案,您还可以使用file_get_contents:

echo file_get_contents("http://...z/pub/".$file.'.pdf');
Run Code Online (Sandbox Code Playgroud)

  • @ user583311:'不工作'很模糊.至少删除错误抑制操作符(`@`),以便您可以看到(并告诉我们)为什么它不起作用 (2认同)