📅  最后修改于: 2023-12-03 15:33:34.316000             🧑  作者: Mango
在PHP中,可以使用readfile()
函数以简单的方式读取文件并将其打印到输出流中。
readfile(filename, use_include_path, context);
参数:
filename
:必需。表示要读取的文件名,可以是相对路径或绝对路径。use_include_path
:可选。如果为1,则搜索include_path中提供的路径来查找文件。context
:可选。是一个资源,包含各种上下文选项,例如超时,代理设置等。如果函数成功读取文件,则返回文件中的字节数。否则,该函数将返回false。
<?php
$filename = "example.txt";
if (file_exists($filename)) {
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename="'.basename($filename).'"');
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($filename));
readfile($filename);
exit;
}
?>
这个例子将读取名为example.txt
的文件,并将其作为文件下载提供给用户。readfile()
函数用于输出文件内容。
readfile()
函数在读取大文件时可能会导致内存问题,因此应该谨慎使用。Content-Type
头来告诉浏览器正确的MIME类型,否则可能会导致文件无法打开或无法正确显示。