PHP 文件上传与下载的示例代码实现

2024-12-28 19:15:24   小编

PHP 文件上传与下载的示例代码实现

在 Web 开发中,文件的上传和下载是常见的功能需求。本文将为您详细介绍 PHP 中文件上传与下载的示例代码实现。

让我们来看文件上传的实现。以下是一个简单的 PHP 文件上传代码示例:

<?php
if ($_FILES["file"]["error"] > 0) {
    echo "错误: ". $_FILES["file"]["error"]. "<br>";
} else {
    $allowedExtensions = array("jpg", "jpeg", "png", "gif", "pdf");
    $fileExtension = pathinfo($_FILES["file"]["name"], PATHINFO_EXTENSION);

    if (in_array($fileExtension, $allowedExtensions)) {
        if (move_uploaded_file($_FILES["file"]["tmp_name"], "uploads/". $_FILES["file"]["name"])) {
            echo "文件上传成功";
        } else {
            echo "文件上传失败";
        }
    } else {
        echo "不允许的文件类型";
    }
}
?>

在上述代码中,首先检查文件上传过程中是否有错误。然后,定义了允许上传的文件扩展名数组。通过获取上传文件的扩展名,并与允许的扩展名进行比较,来判断文件类型是否合法。最后,使用 move_uploaded_file 函数将文件移动到指定的目录。

接下来是文件下载的实现。以下是一个 PHP 文件下载的示例代码:

<?php
$file = "uploads/file.pdf";

if (file_exists($file)) {
    header('Content-Description: File Transfer');
    header('Content-Type: application/octet-stream');
    header('Content-Disposition: attachment; filename='. basename($file));
    header('Content-Length: '. filesize($file));
    readfile($file);
    exit;
} else {
    echo "文件不存在";
}
?>

在这个示例中,首先检查要下载的文件是否存在。然后,通过设置一系列的 HTTP 响应头,告知浏览器这是一个文件下载操作,并提供文件的相关信息,如文件名、文件大小等。最后,使用 readfile 函数读取并输出文件内容。

需要注意的是,在实际应用中,还需要对文件上传和下载进行更多的安全性和错误处理考虑,例如防止恶意文件上传、处理并发下载请求等。

通过以上示例代码,您可以初步了解 PHP 中文件上传与下载的实现方式,并根据具体需求进行进一步的修改和完善,以满足您的 Web 应用程序的功能要求。

TAGS: PHP 编程 PHP 文件上传 PHP 文件下载 文件操作示例

欢迎使用万千站长工具!

Welcome to www.zzTool.com