当用户从 PHP 脚本请求文件时,有效地传递文件变得至关重要。以下是如何有效地做到这一点:
PHP 函数 readfile() 提供了一种向用户发送文件的简单方法。它从服务器读取文件并将其输出到浏览器。
语法:
readfile($file);
示例:
$file = 'myfile.pdf'; if (file_exists($file)) { readfile($file); exit; }
确保文件交付正确地,配置适当的 HTTP 标头非常重要。默认情况下,readfile() 以内联方式发送文件,而不是提示浏览器下载它。
header('Content-Description: File Transfer'); header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename='.basename($file)); header('Content-Transfer-Encoding: binary'); header('Expires: 0'); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Pragma: public'); header('Content-Length: ' . filesize($file));
这些标头指定文件的描述、类型、配置(附件或内联)、传输编码等正确下载文件的关键信息。
通过将 readfile() 与适当的标头配置相结合,您可以根据用户的需要高效地将 PDF 或其他文件发送给用户请求。
以上是如何使用PHP高效地向用户发送文件?的详细内容。更多信息请关注PHP中文网其他相关文章!