Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

php $_files

作者:枫尘于往逝   发布日期:2025-10-08   浏览:14

<?php
// 处理文件上传的示例代码

if ($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_FILES['upload'])) {
    // 检查是否有文件上传
    if ($_FILES['upload']['error'] === UPLOAD_ERR_OK) {
        $tmp_name = $_FILES['upload']['tmp_name'];
        $name = basename($_FILES['upload']['name']);
        $upload_dir = 'uploads/';

        // 确保上传目录存在
        if (!is_dir($upload_dir)) {
            mkdir($upload_dir, 0777, true);
        }

        // 将文件移动到指定目录
        if (move_uploaded_file($tmp_name, $upload_dir . $name)) {
            echo "文件上传成功!";
        } else {
            echo "文件上传失败。";
        }
    } else {
        // 输出错误信息
        switch ($_FILES['upload']['error']) {
            case UPLOAD_ERR_INI_SIZE:
                echo "文件大小超过了 php.ini 中 upload_max_filesize 的限制。";
                break;
            case UPLOAD_ERR_FORM_SIZE:
                echo "文件大小超过了 HTML 表单中 MAX_FILE_SIZE 的限制。";
                break;
            case UPLOAD_ERR_PARTIAL:
                echo "文件只有部分被上传。";
                break;
            case UPLOAD_ERR_NO_FILE:
                echo "没有文件被上传。";
                break;
            case UPLOAD_ERR_NO_TMP_DIR:
                echo "找不到临时文件夹。";
                break;
            case UPLOAD_ERR_CANT_WRITE:
                echo "文件写入失败。";
                break;
            case UPLOAD_ERR_EXTENSION:
                echo "PHP 扩展阻止了文件上传。";
                break;
            default:
                echo "未知错误。";
        }
    }
}
?>

<!-- HTML 表单 -->
<form action="" method="post" enctype="multipart/form-data">
    选择文件: <input type="file" name="upload" />
    <input type="submit" value="上传" />
</form>

解释说明:

  • $_FILES 是一个超全局数组,用于存储有关上传文件的信息。
  • $_FILES['upload']['name'] 包含上传文件的原始名称。
  • $_FILES['upload']['tmp_name'] 包含上传文件在服务器上的临时路径。
  • $_FILES['upload']['error'] 包含上传过程中可能发生的错误代码。
  • move_uploaded_file() 函数用于将上传的文件从临时位置移动到指定的目标位置。
  • UPLOAD_ERR_OK 表示文件上传成功,其他值表示不同的错误情况。
  • enctype="multipart/form-data" 是表单必须设置的属性,以便能够上传文件。

上一篇:php require

下一篇:php class

大家都在看

php session用法

php 定义常量

phpisset函数

php html转图片

php后端

php爬虫框架

php读取csv文件

php+mysql动态网站开发

php 三元表达式

php文件加密

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站