分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 软件开发

PHP文件域上传

发布时间:2023-09-06 02:31责任编辑:熊小新关键词:PHP

PHP中使用文件域上传文件,需要几个步骤,首先先判断有无文件域,然后判断是否选择了文件,最后判断文件是否上传成功。

需要注意的是 表单中有文件域,必须将method设置为post, enctype设置为multipart/form-data

在文件上传时会给服务端以数组的形式返回几个值,如下:

 ???//array(5) { ???// ?["name"]=> ???// ?string(25) "mmexport1534732827710.jpg" ???// ?["type"]=> ???// ?string(10) "image/jpeg" ???// ?["tmp_name"]=> ???// ?string(26) "C:\Windows\Temp\phpD9E.tmp" ???// ?["error"]=> ???// ?int(0) ???// ?["size"]=> ???// ?int(145606) ???//}

其中‘‘name"为上传文件名,"type"为上传文件类型,"tmp_name"为上传文件后所存放的路径,"error"为上传文件的错误问题,"size"为上传文件的大小。

具体代码如下:

<?php function upload() { ???if (!(isset($_FILES[‘avatar‘]))) { ???????//是否有文件域 ???????$GLOBALS[‘message‘] = ‘没有上传文件‘; ???????return; ???} ???$avatar = $_FILES[‘avatar‘]; ???var_dump($avatar); ???if ($avatar[‘error‘]!==UPLOAD_ERR_OK) { ???????//服务端没有接受到上传的文件 ????????$GLOBALS[‘message‘] = ‘上传失败‘; ????????return; ???} ???//接收到了文件 ???//将文件从临时目录移动到网站范围内 ???$source=$avatar[‘tmp_name‘]; ??//源文件路径 ???$target=‘./uploads/‘ . $avatar[‘name‘]; ???//目标路径 ???//==>./uploads/mmexport1534732827710.jpg ???$moved=move_uploaded_file($source, $target); ???if (!$moved) { ????????$GLOBALS[‘message‘] = ‘上传失败‘; ????????return; ???} ???//移动成功===>上传成功 ????$GLOBALS[‘message‘] = ‘上传成功‘;}if ($_SERVER[‘REQUEST_METHOD‘]===‘POST‘) { ???//接受文件 ?使用一个 叫做$_FILES 超全局成员 ???//var_dump($_FILES); ???upload();} ?><!DOCTYPE html><html lang="en"><head> ???<meta charset="UTF-8"> ???<title>文件域</title></head><body> ???<!-- 表单中有文件域,必须将method设置为post, enctype设置为multipart/form-data --> ???<!-- enctype 默认是urlencoded 格式 ??key1=value1&key2=value2 --> ???<form action="<?php echo $_SERVER[‘PHP_SELF‘]; ?>" method="post" enctype="multipart/form-data"> ???????<input type="file" name="avatar"> ???????<button>上传</button> ???????<?php if (isset($message)): ?> ???????????<?php echo $message ?> ???????<?php endif ?> ???</form></body></html>

PHP文件域上传

原文地址:https://www.cnblogs.com/Yaucheun/p/10308804.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved