PHP中$_FILES的使用方法及注意事项说明


Posted in PHP onFebruary 14, 2014

$_FILES:经由 HTTP POST 文件上传而提交至脚本的变量,类似于旧数组$HTTP_POST_FILES 数组(依然有效,但反对使用)详细信息可参阅 POST方法上传

$_FILES数组内容如下:

$_FILES['myFile']['name'] 客户端文件的原名称       

$_FILES['myFile']['type'] 文件的 MIME类型,需要浏览器提供该信息的支持,例如"image/gif"       

$_FILES['myFile']['size'] 已上传文件的大小,单位为字节       

$_FILES['myFile']['tmp_name'] 文件被上传后在服务端储存的临时文件名,一般是系统默认,可以在php.ini的upload_tmp_dir指定,但用 putenv() 函数设置是不起作用的     

$_FILES['myFile']['error'] 和该文件上传相关的错误代码,['error'] 是在 PHP 4.2.0版本中增加的,下面是它的说明:(它们在PHP3.0以后成了常量)

UPLOAD_ERR_OK 值:0; 没有错误发生,文件上传成功

UPLOAD_ERR_INI_SIZE 值:1; 上传的文件超过了 php.ini 中 upload_max_filesize选项限制的值           

UPLOAD_ERR_FORM_SIZE 值:2;上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值       

UPLOAD_ERR_PARTIAL 值:3; 文件只有部分被上传                 

UPLOAD_ERR_NO_FILE 值:4;没有文件被上传, 值:5; 上传文件大小为0                     

注:

1. 文件被上传结束后,默认地被存储在了临时目录中,这时必须将它从临时目录中删除或移动到其它地方,如果没有,则会被删除。也就是不管是否上传成功,脚本执行完后临时目录里的文件肯定会被删除。所以在删除之前要用PHP的copy() 函数将它复制到其它位置,此时,才算完成了上传文件过程。

2. 在 PHP 4.1.0 版本以前该数组的名称为 $HTTP_POST_FILES,它并不像$_FILES 一样是自动全局变量。PHP 3 不支持 $HTTP_POST_FILES数组。

3. 用form上传文件时,一定要加上属性内容enctype="multipart/form-data",否则用$_FILES[filename]获取文件信息时会报异常。

<form enctype="multipart/form-data" action="URL"method="post">
       <input name="myFile" type="file">
       <input type="submit"value="上传文件">
</form>
 
PHP 相关文章推荐
php字符串截取中文截取2,单字节截取模式
Dec 10 PHP
PHP执行linux系统命令的常用函数使用说明
Apr 27 PHP
PHP开发需要注意的安全问题
Sep 01 PHP
PHP在字符断点处截断文字的实现代码
Apr 21 PHP
php中截取中文字符串的代码小结
Jul 17 PHP
解决PHP mysql_query执行超时(Fatal error: Maximum execution time …)
Jul 03 PHP
简单的php缓存类分享     php缓存机制
Jan 22 PHP
PHP OPP机制和模式简介(抽象类、接口和契约式编程)
Jun 09 PHP
PHP数组相关函数汇总
Mar 24 PHP
PHP随手笔记整理之PHP脚本和JAVA连接mysql数据库
Nov 25 PHP
php获取服务器操作系统相关信息的方法
Oct 08 PHP
zend框架实现支持sql server的操作方法
Dec 08 PHP
php $_SERVER windows系统与linux系统下的区别说明
Feb 14 #PHP
PHP COOKIE及时生效的方法介绍
Feb 14 #PHP
php递归使用示例(php递归函数)
Feb 14 #PHP
php根据isbn书号查询amazon网站上的图书信息的示例
Feb 13 #PHP
使用php记录用户通过搜索引擎进网站的关键词
Feb 13 #PHP
php中simplexml_load_string使用实例分享
Feb 13 #PHP
使用php显示搜索引擎来的关键词
Feb 13 #PHP
You might like
实例(Smarty+FCKeditor新闻系统)
2007/01/02 PHP
用PHP读取和编写XML DOM的实现代码
2011/02/03 PHP
win7 64位系统 配置php最新版开发环境(php+Apache+mysql)
2014/08/15 PHP
php计算函数执行时间的方法
2015/03/20 PHP
PHP curl伪造IP地址和header信息代码实例
2015/04/27 PHP
PHP中多线程的两个实现方法
2016/10/14 PHP
php5与php7的区别点总结
2019/10/11 PHP
如何在PHP中使用AES加密算法加密数据
2020/06/24 PHP
jQuery Autocomplete自动完成插件
2010/07/17 Javascript
一些主流JS框架中DOMReady事件的实现小结
2011/02/12 Javascript
javascript 实现字符串反转的三种方法
2013/11/23 Javascript
javascript实现简单的Map示例介绍
2013/12/23 Javascript
js实现遮罩层划出效果是生成div而不是显示
2014/07/29 Javascript
javascript为按钮注册回车事件(设置默认按钮)的方法
2015/05/09 Javascript
JavaScript模拟数组合并concat
2016/03/06 Javascript
jquery跟随屏幕滚动效果的实现代码
2016/04/13 Javascript
jQuery 如何实现一个滑动按钮开关
2016/12/01 Javascript
详解jQuery中ajax.load()方法
2017/01/25 Javascript
vue实现仿淘宝结账页面实例代码
2017/11/08 Javascript
微信小程序上传图片功能(附后端代码)
2020/06/19 Javascript
webpack+vue-cil中proxyTable处理跨域的方法
2018/07/20 Javascript
详解vue v-model
2020/08/31 Javascript
Python hashlib模块用法实例分析
2018/06/12 Python
Python把对应格式的csv文件转换成字典类型存储脚本的方法
2019/02/12 Python
基于Python测试程序是否有错误
2020/05/16 Python
Tensorflow加载Vgg预训练模型操作
2020/05/26 Python
Python偏函数Partial function使用方法实例详解
2020/06/17 Python
python3爬虫中多线程的优势总结
2020/11/24 Python
Canvas图片分割效果的实现
2019/07/29 HTML / CSS
英国休闲奢华的缩影:Crew Clothing
2019/05/05 全球购物
校长先进事迹材料
2014/02/01 职场文书
公司总经理岗位职责范本
2014/08/15 职场文书
PostgreSQL解析URL的方法
2021/08/02 PostgreSQL
mongoDB数据库索引快速入门指南
2022/03/23 MongoDB
Android开发 使用文件储存的方式保存QQ密码
2022/04/24 Java/Android