首页 >后端开发 >php教程 >如何从 PHP 服务器向用户发送文件?

如何从 PHP 服务器向用户发送文件?

Linda Hamilton
Linda Hamilton原创
2024-11-25 08:13:48250浏览

How to Send Files to Users from a PHP Server?

向用户发送文件

用户与 PHP 脚本交互时,可能会遇到需要传输文件的场景,例如 PDF,发送到客户端的浏览器。要实现此目的,适当的方法取决于文件的存储位置。

服务器端文件

假设文件驻留在服务器上,首选方法是使用 readfile() 函数。然而,仅仅执行 readfile($file) 是不够的。脚本必须包含适当的标头,以使客户端能够成功接收文件。

请参阅官方 PHP 手册中的以下示例:

<?php
$file = 'monkey.gif';

if (file_exists($file)) {
    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));
    ob_clean();
    flush();
    readfile($file);
    exit;
}
?>

以上是如何从 PHP 服务器向用户发送文件?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn