热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

PHP处理上传文件

HTML中使用typefile类型的表单可以向服务器上传文件;上传文件的表单必须在form中定义enctypmultipartform-data;HTM

HTML中使用type = 'file'类型的表单可以向服务器上传文件;

上传文件的表单必须在form中定义enctyp = 'multipart/form-data';

 

HTML代码如下:

DOCTYPE html>
<html><head><meta charset&#61;"utf-8"><title>FileSubmit Document.title>head><body><form action&#61;"user.php" method&#61;"post" enctype&#61;"multipart/form-data" name&#61;"upvideo">上传文件&#xff1a;<input type&#61;"file" name&#61;"video" /><input type&#61;"submit" value&#61;"上传"/>form>form>body>
html>

 

PHP代码如下&#xff1a;

phpvar_dump($_POST);
var_dump($_FILES);if ($_FILES[&#39;video&#39;][&#39;error&#39;] > 0) {echo "Error:" .$_FILES[&#39;video&#39;][&#39;error&#39;]. "
";
}
else {print_r($_FILES[&#39;video&#39;]);if (is_uploaded_file($_FILES[&#39;video&#39;][&#39;tmp_name&#39;])) {$upfile &#61; $_FILES[&#39;video&#39;];// 获取数组里面的值$name &#61; $upfile[&#39;name&#39;]; // 上传文件的文件名$type &#61; $upfile[&#39;type&#39;]; // 上传文件的类型$size &#61; $upfile[&#39;size&#39;]; // 上传文件的大小$tmp_name &#61; $upfile[&#39;tmp_name&#39;]; //上传文件的临时存放路径// 移动上传的文件到指定目录move_uploaded_file($tmp_name, &#39;/Library/WebServer/Documents/book/&#39; . $name);}
}

注意&#xff1a;

使用print_r打印数据的时候发现第一个数组为空&#xff0c;这表明使用file类型表单提交数据时并不使用$_POST接受数据&#xff0c;而是使用全局变量$_FILES来接收&#xff1b;

· php默认上传文件的大小只有2MB&#xff1b;

 

例如要上传一个50MB的大文件&#xff0c;php.ini配置如下&#xff1a;

file_uploads &#61; On

upload_tmp_dir &#61; "/user/file"

upload_max_filesize &#61; 50M

post_max_size &#61; 100M

max_excution_time &#61; 600

max_input_time &#61; 600

转:https://www.cnblogs.com/phpcurd/p/8486694.html



推荐阅读
  • 本文详细介绍了PHP中的几种超全局变量,包括$GLOBAL、$_SERVER、$_POST、$_GET等,并探讨了AJAX的工作原理及其优缺点。通过具体示例,帮助读者更好地理解和应用这些技术。 ... [详细]
  • 本文详细介绍了在PHP中如何获取和处理HTTP头部信息,包括通过cURL获取请求头信息、使用header函数发送响应头以及获取客户端HTTP头部的方法。同时,还探讨了PHP中$_SERVER变量的使用,以获取客户端和服务器的相关信息。 ... [详细]
  • 使用 ModelAttribute 实现页面数据自动填充
    本文介绍了如何利用 Spring MVC 中的 ModelAttribute 注解,在页面跳转后自动填充表单数据。主要探讨了两种实现方法及其背后的原理。 ... [详细]
  • 本文详细介绍了Socket在Linux内核中的实现机制,包括基本的Socket结构、协议操作集以及不同协议下的具体实现。通过这些内容,读者可以更好地理解Socket的工作原理。 ... [详细]
  • HDU 2537 键盘输入处理
    题目描述了一个名叫Pirates的男孩想要开发一款键盘输入软件,遇到了大小写字母判断的问题。本文提供了该问题的解决方案及实现方法。 ... [详细]
  • 本文介绍了如何通过安装和配置php_uploadprogress扩展来实现文件上传时的进度条显示功能。通过一个简单的示例,详细解释了从安装扩展到编写具体代码的全过程。 ... [详细]
  • 分布式计算助力链力实现毫秒级安全响应,确保100%数据准确性
    随着分布式计算技术的发展,其在数据存储、文件传输、在线视频、社交平台及去中心化金融等多个领域的应用日益广泛。国际知名企业如Firefox、Google、Opera、Netflix、OpenBazaar等均已采用该技术,推动了技术创新和服务升级。 ... [详细]
  • 本文详细介绍了如何在VSCode环境中配置Prettier工具以支持TypeScript项目,同时结合ESLint实现代码风格的一致性和自动化格式化。 ... [详细]
  • 使用jQuery与百度地图API实现地址转经纬度功能
    本文详细介绍了如何利用jQuery和百度地图API将地址转换为经纬度,包括申请API密钥、页面构建及核心代码实现。 ... [详细]
  • 本文由公众号【数智物语】(ID: decision_engine)发布,关注获取更多干货。文章探讨了从数据收集到清洗、建模及可视化的全过程,介绍了41款实用工具,旨在帮助数据科学家和分析师提升工作效率。 ... [详细]
  • 来自FallDream的博客,未经允许,请勿转载,谢谢。一天一套noi简直了.昨天勉强做完了noi2011今天教练又丢出来一套noi ... [详细]
  • 题面:P3178[HAOI2015]树上操作好像其他人都嫌这道题太容易了懒得讲,好吧那我讲。题解:第一个操作和第二个操作本质上是一样的&# ... [详细]
  • UVa 11683: 激光雕刻技术解析
    自1958年发明以来,激光技术已在众多领域得到广泛应用,包括电子设备、医疗手术工具、武器等。本文将探讨如何使用激光技术进行材料雕刻,并通过编程解决一个具体的激光雕刻问题。 ... [详细]
  • 在学习了Splay树的基本查找功能后,可能会觉得它与普通的二叉查找树没有太大的区别,仅仅是通过splay操作减少了时间开销。然而,Splay树之所以被誉为“序列之王”,主要在于其强大的区间操作能力。 ... [详细]
  • 通过命令行执行Robot Framework测试用例的方法
    本文介绍如何利用命令行工具来运行Robot Framework中的测试文件及用例,解决常见的模块未找到错误。 ... [详细]
author-avatar
超人不会飞
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有