PHP $_FILES函数详解


Posted in PHP onMarch 09, 2011

如:

<form enctype="multipart/form-data" action="upload.php" method="post"> 
<input type="hidden" name="MAX_FILE_SIZE" value="1000"> 
<input name="myFile" type="file"> 
<input type="submit" value="上传文件"> 
</form>

然后upload.php中可以直接用
$_FILES
$_POST
$_GET
等函数获取表单内容。

今天我们着重讲$_FILES函数。
当客户端提交后,我们获得了一个$_FILES 数组

$_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.

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

PHP 相关文章推荐
PHP+JS无限级可伸缩菜单详解(简单易懂)
Jan 02 PHP
php输出xml格式字符串(用的这个)
Jul 12 PHP
PHP 获取文件权限函数介绍
Jul 11 PHP
PHP 只允许指定IP访问(允许*号通配符过滤IP)
Jul 08 PHP
apache中为php 设置虚拟目录
Dec 17 PHP
php+ajax实现文章自动保存的方法
Dec 30 PHP
php实现paypal 授权登录
May 28 PHP
PHP设计模式之观察者模式实例
Feb 22 PHP
PHP图形计数器程序显示网站用户浏览量
Jul 20 PHP
php7 图形用户界面GUI 开发示例
Feb 22 PHP
Jsonp劫持学习
Apr 01 PHP
php修改word的实例方法
Nov 17 PHP
PHP中for与foreach的区别分析
Mar 09 #PHP
php模板中出现空行解决方法
Mar 08 #PHP
在MongoDB中模拟Auto Increment的php代码
Mar 06 #PHP
PHP数组交集的优化代码分析
Mar 06 #PHP
php下安装配置fckeditor编辑器的方法
Mar 02 #PHP
PHP如何抛出异常处理错误
Mar 02 #PHP
php中实现记住密码自动登录的代码
Mar 02 #PHP
You might like
PHP&amp;MYSQL服务器配置说明
2006/10/09 PHP
php 全文搜索和替换的实现代码
2008/07/29 PHP
PhpMyAdmin中无法导入sql文件的解决办法
2010/01/08 PHP
PHP在字符断点处截断文字的实现代码
2011/04/21 PHP
hadoop常见错误以及处理方法详解
2013/06/19 PHP
php字符串截取的简单方法
2013/07/04 PHP
PHP处理SQL脚本文件导入到MySQL的代码实例
2014/03/17 PHP
ThinkPHP后台首页index使用frameset时的注意事项分析
2014/08/22 PHP
php中数据库连接方式pdo和mysqli对比分析
2015/02/25 PHP
解决IE下select标签innerHTML插入option的BUG(兼容IE,FF,Opera,Chrome,Safari)
2010/05/13 Javascript
js解析xml字符串和xml文档实现原理及代码(针对ie与火狐)
2013/02/02 Javascript
javascript获取所有同类checkbox选项(实例代码)
2013/11/07 Javascript
eclipse导入jquery包后报错的解决方法
2014/02/17 Javascript
AngularJS 单元测试(二)详解
2016/09/21 Javascript
详细分析JS函数去抖和节流
2017/12/05 Javascript
利用js给datalist或select动态添加option选项的方法
2018/01/25 Javascript
js中let和var定义变量的区别
2018/02/08 Javascript
jQuery实现动态添加和删除input框代码实例
2019/03/29 jQuery
jquery 遍历hash操作示例【基于ajax交互】
2019/10/12 jQuery
JavaScript array常用方法代码实例详解
2020/09/02 Javascript
vue3为什么要用proxy替代defineProperty
2020/10/19 Javascript
详解Python 装饰器执行顺序迷思
2018/08/08 Python
使用Python通过oBIX协议访问Niagara数据的示例
2020/12/04 Python
CSS3 渐变(Gradients)之CSS3 径向渐变
2016/07/08 HTML / CSS
美国农场鲜花速递:The Bouqs
2018/07/13 全球购物
具有防紫外线功能的高性能钓鱼服装:Hook&Tackle
2018/08/16 全球购物
运动会领导邀请函
2014/01/10 职场文书
工程造价专业大学生职业生涯规划书
2014/01/18 职场文书
酒店销售经理岗位职责
2014/01/31 职场文书
学生党支部先进事迹
2014/02/04 职场文书
《理想》教学反思
2014/02/17 职场文书
双方协议书
2014/04/22 职场文书
学校春季防火方案
2014/06/08 职场文书
大专毕业生自我鉴定范文(2篇)
2014/09/27 职场文书
服务整改报告
2014/11/06 职场文书
员工聘用合同范本
2015/09/21 职场文书