PHP $_FILES函数详解

 更新时间:2011年03月09日 12:45:22   作者:  
在PHP中上传一个文件建一个表单要比ASP中灵活得多。具体的看代码。
如:
复制代码 代码如下:

<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学习之function的用法

    php学习之function的用法

    用户自定义函数也称自定义函数,它们不是PHP提供的,是由程序员创建的.由于自己创建了这样的函数,所以就可以完全控制这些函数.因此可以让一个函数完全按照自己希望的方式运行
    2012-07-07
  • php SQL防注入代码集合

    php SQL防注入代码集合

    php下实现sql防注入效果代码,asp的比较多,php的倒不多见,喜欢php的朋友可以参考下
    2008-04-04
  • 自动生成文章摘要的代码[PHP 版本]

    自动生成文章摘要的代码[PHP 版本]

    自动生成文章摘要的代码[PHP 版本]...
    2007-03-03
  • PHP异步调用socket实现代码

    PHP异步调用socket实现代码

    浏览器和服务器之间只一种面向无连接的HTTP协议进行通讯的,面向无连接的程序的特点是客户端请求服务端,服务端根据请求输出相应的程序,不能保持持久连接
    2012-01-01
  • php身份证号码检查类实例

    php身份证号码检查类实例

    这篇文章主要介绍了php身份证号码检查类,涉及php正则匹配与数组遍历的相关技巧,需要的朋友可以参考下
    2015-06-06
  • PHP中创建图像并绘制文字的例子

    PHP中创建图像并绘制文字的例子

    这篇文章主要介绍了PHP中创建图像并绘制文字的例子,在图像中显示的文字也需要按坐标位置画上去,在PHP中不仅支持比较多的字体库,而且提供了非常灵活的文字绘制方法,需要的朋友可以参考下
    2014-11-11
  • php中curl、fsocket、file_get_content三个函数的使用比较

    php中curl、fsocket、file_get_content三个函数的使用比较

    最近做一个网页小偷程序的时候才发现file_get_content已经完全不能满足需求了。我觉得,在读取远程内容的时候,file_get_content除了使用比curl便捷以外,其他都没有curl好
    2014-05-05
  • php中文乱码怎么办如何让浏览器自动识别utf-8

    php中文乱码怎么办如何让浏览器自动识别utf-8

    调试php的时候经常显示乱码,每次打开浏览器都要改下编码,下面为大家介绍个不错的方法让浏览器自动识别为utf-8,有类似情况的额朋友可以参考下
    2014-01-01
  • 可兼容php5与php7的cURL文件上传功能实例分析

    可兼容php5与php7的cURL文件上传功能实例分析

    这篇文章主要介绍了可兼容php5与php7的cURL文件上传功能,结合实例形式分析了针对php5与php7版本在使用curl进行文件上传时的相关判定与具体操作技巧,需要的朋友可以参考下
    2018-05-05
  • php ajax异步读取rss文档数据

    php ajax异步读取rss文档数据

    这篇文章主要介绍了php ajax异步读取rss文档数据的相关资料,RSS是一种描述和同步网站内容的格式,需要的朋友可以参考下
    2016-03-03

最新评论