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('参数不足');
}
相关推荐
移幻漂流20 小时前
C/C++并发编程详解:如何写出优秀的并发程序
c语言·开发语言·c++
余醉 | dtminer20 小时前
R语言常见新手问题
开发语言·r语言
それども20 小时前
为什么要加@ResponseBody
java·开发语言·spring boot
一只专注api接口开发的技术猿21 小时前
微服务架构下集成淘宝商品 API 的实践与思考
java·大数据·开发语言·数据库·微服务·架构
被星1砸昏头21 小时前
C++中的享元模式
开发语言·c++·算法
2501_9444241221 小时前
Flutter for OpenHarmony游戏集合App实战之记忆翻牌配对消除
android·java·开发语言·javascript·windows·flutter·游戏
m0_7482404421 小时前
Laravel5.6核心更新全解析
开发语言·php
曹牧21 小时前
C#:Obsolete
开发语言·c#
我是苏苏21 小时前
Web开发:使用C#的System.Drawing.Common将png图片转化为icon图片
开发语言·c#
冬奇Lab21 小时前
【Kotlin系列11】协程原理与实战(下):Flow与Channel驯服异步数据流
android·开发语言·kotlin