解析PHP中$_FILES的使用以及注意事项


Posted in PHP onJuly 05, 2013

$_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 相关文章推荐
dede3.1分页文字采集过滤规则详说(图文教程)续四
Apr 03 PHP
PHP写MySQL数据 实现代码
Jun 15 PHP
PHP系列学习之日期函数使用介绍
Aug 18 PHP
ThinkPHP有变量的where条件分页实例
Nov 03 PHP
PHP中使用Imagick读取pdf并生成png缩略图实例
Jan 21 PHP
Yii扩展组件编写方法实例分析
Jun 29 PHP
php中json_encode不兼容JSON_UNESCAPED_UNICODE的解决方案
May 31 PHP
thinkPHP中volist标签用法示例
Dec 06 PHP
ZendFramework2连接数据库操作实例
Apr 18 PHP
PHP中递归的实现实例详解
Nov 14 PHP
PHP程序守护进程化实现方法详解
Jul 16 PHP
php使用event扩展的io复用测试的示例
Oct 20 PHP
如何利用PHP执行.SQL文件
Jul 05 #PHP
PHP session_start()问题解疑(详细介绍)
Jul 05 #PHP
浅析PHP安装扩展mcrypt以及相关依赖项(PHP安装PECL扩展的方法)
Jul 05 #PHP
PHP仿博客园 个人博客(2) 数据库增添改删
Jul 05 #PHP
浅析PHP的ASCII码转换类
Jul 05 #PHP
PHP仿博客园 个人博客(1) 数据库与界面设计
Jul 05 #PHP
PHP cdata 处理(详细介绍)
Jul 05 #PHP
You might like
php fputcsv命令 写csv文件遇到的小问题(多维数组连接符)
2011/05/24 PHP
php遍历文件夹所有文件子文件夹函数代码
2013/11/27 PHP
php使用递归计算文件夹大小
2014/12/24 PHP
PHP中4种常用的抓取网络数据方法
2015/06/04 PHP
Django中的cookie与session操作实例代码
2017/08/17 PHP
详解在YII2框架中使用UEditor编辑器发布文章
2018/11/02 PHP
Dom 是什么的详细说明
2010/10/25 Javascript
js中访问html中iframe的文档对象的代码[IE6,IE7,IE8,FF]
2011/01/08 Javascript
计算世界完全对称日的js代码,粗糙版
2011/11/04 Javascript
jquery操作 iframe的方法
2014/12/03 Javascript
Jquery 实现弹出层插件
2015/01/28 Javascript
Javascript实现颜色rgb与16进制转换的方法
2015/04/18 Javascript
jquery trigger实现联动的方法
2016/02/29 Javascript
JavaScript基础——使用Canvas绘图
2016/11/02 Javascript
JS正则表达式修饰符中multiline(/m)用法分析
2016/12/27 Javascript
laravel5.4+vue+element简单搭建的示例代码
2017/08/29 Javascript
vue.js 底部导航栏 一级路由显示 子路由不显示的解决方法
2018/03/09 Javascript
页面内锚点定位及跳转方法总结(推荐)
2019/04/24 Javascript
Weex开发之地图篇的具体使用
2019/10/16 Javascript
vue 实现路由跳转时更改页面title
2019/11/05 Javascript
浅谈Vue 函数式组件的使用技巧
2020/06/16 Javascript
Python将列表数据写入文件(txt, csv,excel)
2019/04/03 Python
Django使用消息提示简单的弹出个对话框实例
2019/11/15 Python
Python xmltodict模块安装及代码实例
2020/10/05 Python
Dockers美国官方网站:卡其裤、男士服装、鞋及配件
2016/11/22 全球购物
美国手机支架公司:PopSockets
2019/11/27 全球购物
爱情检讨书大全
2014/01/21 职场文书
大学生志愿者活动总结
2014/06/27 职场文书
家长学校培训材料
2014/08/20 职场文书
中学生秋季运动会广播稿
2014/09/21 职场文书
门面房租房协议书
2014/12/01 职场文书
2014年建筑工程工作总结
2014/12/03 职场文书
导师对论文的学术评语
2015/01/04 职场文书
奖学金主要事迹范文
2015/11/04 职场文书
高中数学教学反思范文
2016/02/18 职场文书
详解TS数字分隔符和更严格的类属性检查
2021/05/06 Javascript