php如何实现文件上传

php实现文件上传需要通过全局变量(数组):$_FILES 结合 move_uploaded_file 函数来实现。


move_uploaded_file函数(只对POST方式生效):

其中move_uploaded_file函数语法:move_uploaded_file(需要移动的文件,移动的目的地址);

如果移动成功范围true,否则返回false。


$_FILES全局变量(数组):

$_FILES'input文件上传控件设置的name属性的值''name':获取上传文件的名称

$_FILES'input文件上传控件设置的name属性的值''type':获取上传文件的MIME类型

$_FILES'input文件上传控件设置的name属性的值''size':获取上传文件的大小(以大B字节为单位)

$_FILES'input文件上传控件设置的name属性的值''tmp_name':获取上传的文件在服务器的临时文件名

$_FILES'input文件上传控件设置的name属性的值''error':获取上传错误代码


简单的上传案例(index.html与up.php处于同一级目录):

index.html代码:

html 复制代码
<!DOCTYPE html>
<html>
    <head>
        <title>文件上传</title>
        <meta charset="utf-8">
    </head>
    <body>
        <form action="./up.php" method="post" enctype="multipart/form-data">
            <div>
                <input type="file" name="upfile">
                <input type="submit">
            </div>
        </form>
    </body>
</html>

up.php代码:

php 复制代码
<?php 


$path = './up/'.$_FILES['upfile']['name'];         //定义文件的保存位置(以自定义路径+文件的原文件名为例)


if(move_uploaded_file($_FILES['upfile']['tmp_name'], $path)) {          //获取上传文件在服务器上的临时名称,将上传的临时文件移动到定义的位置。如果将临时文件移动到了定义的位置,则提示上传成功,否则提示上传失败
    echo "上传成功";  
} else{  
    echo "上传失败";  
}

?>
相关推荐
马立杰16 分钟前
Docker Build 编译补丁版 PHP7.4 FPM 容器镜像教程(CVE-2026-109618 CVE-2026-109619)
运维·docker·容器·php
隔窗听雨眠2 小时前
从PHP2Shell回望:PHP内核漏洞的二十年演进与AI时代的攻防转折
开发语言·人工智能·php
hunteritself2 小时前
AI 挖出 PHP「致命漏洞」!欧洲政府连夜关站,日本首相紧急喊话
开发语言·人工智能·php
李纲明2 小时前
WordPress 媒体库上传图片报「HTTP 错误」:php.ini、临时目录、安全插件和 CDN 怎么逐层查
运维·php·上传·cdn·wordpress·媒体库
小白跃升坊9 小时前
PHP2Shell:AI 两天挖出 9.2 分漏洞,让全球 70% 网站连夜打补丁!1Panel 已经把修复版本封装好,推到了你的应用商店里。
php·开源安全·1panel·ai安全·漏洞披露
Json____11 小时前
PHP 突发严重安全漏洞,AI 开始改变网络安全的攻防方式
人工智能·web安全·php·it学习·wwwoop.com
catchadmin12 小时前
PHP 8.7 协程新提案 让跨协程代码共享请求身份
开发语言·php
Web极客码12 小时前
我用 Claude 分析 Redis 哨兵日志,实现跨机房数据不一致自动对齐
数据库·redis·php
xuefeiniao13 小时前
PHP2Shell漏洞修复
运维·服务器·php
ServBay14 小时前
AI说代码没漏洞?马上被 PHP 打脸了
aigc·php·ai编程