php 如何判断是否上传了文件、图片

假设前端有字段

复制代码
<input type="file" name="user_avatar_image"/>

php使用$_FILES进行判断

  1. 当没有文件上传时,打印$_FILES

    ^ array:1 [▼
    "user_profile_image" => array:5 [▼
    "name" => ""
    "type" => ""
    "tmp_name" => ""
    "error" => 4
    "size" => 0
    ]
    ]

  2. 当有文件上传是,打印$_FILES

    ^ array:1 [▼
    "user_profile_image" => array:5 [▼
    "name" => "软件开发原则.pptx"
    "type" => "application/vnd.openxmlformats-officedocument.presentationml.presentation"
    "tmp_name" => "/Applications/MAMP/tmp/php/phpPHWyCh"
    "error" => 0
    "size" => 3031121
    ]
    ]

  3. 假如前端没有传user_avatar_image的字段,打印$_FILES

    []

因此,可以使用error字段判断是否上传了指定的文件

复制代码
// 获取表单上传文件 字段名为user_profile_image
$field_name = 'user_profile_image';
        
if(!(array_key_exists($field_name, $_FILES) && $_FILES[$field_name]['error'] == 0)){
    $this->error('参数不足');
}
相关推荐
techdashen19 小时前
Rust 社区在 4 月做了什么:项目管理月报解读
开发语言·rust·mfc
十五年专注C++开发20 小时前
QFluentKit: 一个基于 Qt Widgets 的 Fluent Design 风格 UI 组件库
开发语言·c++·qt·ui·qfluentkit
lly20240620 小时前
PHP JSON 使用指南
开发语言
沐知全栈开发20 小时前
jQuery 尺寸
开发语言
Byte Wizard20 小时前
C语言指针深入浅出5
c语言·开发语言
csbysj202020 小时前
Vue.js 监听属性
开发语言
Hesionberger20 小时前
LeetCode 101:对称二叉树(多语言解法)
开发语言·python
小陈的进阶之路20 小时前
Python系列课(11)——PySpark
开发语言·python·ajax
宏笋20 小时前
C++ 回调函数详解和常用场景
开发语言·c++
测试员周周20 小时前
【Appium 系列】第04节-Page Object 模式 — BasePage 基类设计
开发语言·数据库·人工智能·python·语言模型·appium·web app