readfile()
是 PHP 中的一个内置函数,用于从服务器读取文件并将其作为字符串输出。这在需要将文件内容传输到客户端时非常有用,例如在文件下载时。要使用 readfile()
函数传输文件,请按照以下步骤操作:
readfile()
的文件路径是正确的。如果文件位于当前目录中,只需提供文件名即可。如果文件位于其他目录中,请提供相对或绝对路径。$file = 'path/to/your/file.txt';
if (!file_exists($file)) {
echo "文件不存在: " . $file;
exit();
}
readfile()
函数读取文件:调用 readfile()
函数并将文件路径作为参数传递。该函数将直接将文件内容输出到客户端,而无需将其存储在变量中。readfile($file);
4.(可选)设置文件下载时的文件名:如果希望在客户端下载时使用自定义文件名,可以通过设置 Content-Disposition
响应头来指定。
$custom_filename = 'new_file_name.txt';
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename="' . $custom_filename . '"');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
readfile($file);
exit();
将以上代码片段组合在一起,即可使用 readfile()
函数在 PHP 中传输文件。