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

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

(0)

相关推荐

  • PHP上传文件时文件过大$_FILES为空的解决方法

    在做图片上传的时候突然发现一张gif图片上传失败 size为0,实际大小为4.66M.上传小文件时可以,传大文件就不行,看了下PHP.INI里面upload_max_filesize = 2M, 问题就出在这了,修改其值 复制代码 代码如下: ; Maximum allowed size for uploaded files. upload_max_filesize = 20M 重启了下nginx问题解决.

  • PHP $_FILES函数详解

    如: 复制代码 代码如下: <form enctype="multipart/form-data" action="upload.php" method="post"> <input type="hidden" name="MAX_FILE_SIZE" value="1000"> <input name="myFile" type=&qu

  • PHP中uploaded_files函数使用方法详解

    对PHP语言有些了解的朋友们都知道,它包含有功能强大的函数库.我们今天就一起来了解一下PHP uploaded_files函数的具体功能. 在早期的PHP版本中,上传文件很可能是通过如下的代码实现的: 复制代码 代码如下: -- if (isset($_FILES['file'])) { $tmp_name = $_FILES['file']['tmp_name']; } if (file_exists($tmp_name)) { copy($tmp_name,$destfile); } --

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

    $_FILES数组内容如下:$_FILES['myFile']['name'] 客户端文件的原名称.$_FILES['myFile']['type'] 文件的 MIME 类型,需要浏览器提供该信息的支持,例如"image/gif".$_FILES['myFile']['size'] 已上传文件的大小,单位为字节.$_FILES['myFile']['tmp_name'] 文件被上传后在服务端储存的临时文件名,一般是系统默认.可以在php.ini的upload_tmp_dir 指定,但用

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

    $_FILES:经由 HTTP POST 文件上传而提交至脚本的变量,类似于旧数组$HTTP_POST_FILES 数组(依然有效,但反对使用)详细信息可参阅 POST方法上传 $_FILES数组内容如下: $_FILES['myFile']['name'] 客户端文件的原名称 $_FILES['myFile']['type'] 文件的 MIME类型,需要浏览器提供该信息的支持,例如"image/gif" $_FILES['myFile']['size'] 已上传文件的大小,单位为字节

  • Android 程序执行Linux命令的解决方法及注意事项

    一:问题描述    在已经root过的android设备下,app执行一个linux命令,app需要获取su权限,在某些android主板下会出现异常, Command: [su] Working Directory: null Environment: null,代码如下: private void execLinuxCommand(String cmd){ Runtime runtime = Runtime.getRuntime(); try { Process localProcess =

  • .NET中方法的注意事项总结

    本文较为详细的总结了.NET中方法的注意事项.分享给大家供大家参考.具体分析如下: 1. 方法中return 会终止整个方法段. 而break只能终止当前循环. 2. 方法就是一对可用代码的复用. a . 对于可重用的代码,在vs中选中,右键  重构  提取方法.即可自动封装成一个方法. b . 编程中,当我们调用的一个未定义的方法. Ctrl + . 然后Enter.会自动生成相应的方法. 3. 对于方法返回值,如果定义了返回值,方法中必须有对应的return. 没有返回值得方法可以用void

  • iframe中子父类窗口调用JS的方法及注意事项

    一.前言 我页面用的是EasyUI的弹出窗口里面嵌入一个iframe. 第一:父窗口打开子窗口是一个新增用户信息的iframe子页面,点击保存后,子窗口iframe则去调用父窗口的function closeAddWindow()方法,让父窗口去关闭新增页面: 第二:父窗口打开一个设置用户权限的iframe子窗口,首先打开这个子窗口会全部加载数据库表中所有的存在的权限,然后子窗口需要把加载的权限信息拼接html  Append到一个ID为<table id="tb"><

  • 最权威的保养清洁液晶屏的方法及注意事项

    ThinkPad -- 保养清洁液晶屏的方法及注意事项 适用机型:  所有笔记本电脑  文档内容:  现象: 在液晶屏上有刮过的痕迹或擦过的痕迹. 这种痕迹是由于屏幕外壳受到外力积压,使得TrackPoint鼠标或键盘上的按键接触到液晶屏而造成的. 配置: ThinkPad笔记本电脑 解决方法: 使用干燥的软布来轻轻擦拭上述的痕迹. 如果无法擦掉这些痕迹,那么用LCD清洁剂(见 附加信息)蘸湿软布,再轻轻擦拭. 请先晾干液晶屏,再合上屏幕. 附加信息: 液晶屏属于精密的设备,需要小心维护.要防止

  • Java构造器使用方法及注意事项

    Java构造器使用方法及注意事项 超类的构造器在子类的构造器运行之前运行,也就是说,在创建对象时,先运行超类中的构造器,然后再运行子类中的构造器,此时,如果在执行超类构造器的时候,构造器执行了可覆盖的方法,那么就会去调用子类中的该方法,而此时子类还未被实例化,此时就有可能出问题. 以一个例子说明: public class Super { int age = 10; protected void say() { System.out.println("super"); } public

  • imageVue相册Sitemenu插件使用方法及注意事项

    Sitemenu插件可以给你的imageVue相册添加一个flash的导航菜单(具体效果可以看我的相册顶部).这样imageVue在与其他程序配合使用的时候更加方便.下面说一下Sitemenu插件的安装方法和注意事项. 安装方法:1.下载文件(去http://bbs.pjhome.net/viewthread.php?tid=9356的5楼下载或在google上搜索"Sitemenu Module for ImageVue").2.解压缩下载的文件,并上传新的imageVue.swf和

  • ubuntu下安装Python多版本的方法及注意事项

    今天一不小心又把ubuntu系统给完坏了,因为我把python3卸载了,然后就...好了,不废话了,接下来就说一下如何在ubuntu下管理python的多个版本.我这里使用的是一个叫pyenv的Python版本管理工具. 系统环境:ubuntu14.04LTS,系统默认的python版本为2.7,我这里想要再安装一个3.4.3版本. 再安装python之前,我们首先要安装这个管理工具pyenv: $ git clone git://github.com/yyuu/pyenv.git ~/.pye

  • java volatile关键字使用方法及注意事项

    java volatile关键字使用方法及注意事项 什么是volatile关键字 volatile 关键字在多线程程序中起着很重要的作用.当多个线程操作同一个变量时,每个线程将拥有对那个变量的本地缓存拷贝,因此,当某一个线程修改了这个变量的值时,实际上修改的是它本地缓存中的变量值,而不是主内存中的变量值,操作这个变量的其他线程并不知道这个变量的值被改变了.为了避免这种情况,我们可以用 valatile 关键字声明这个变量,用 valatile 声明了这个变量之后,变量将不在本地缓存中保存,而在主

  • CentOS 7 安装python3.7.1的方法及注意事项

    安装wget yum -y install wget 创建一个download目录用于下载各种安装包 mkdir download 切换到刚创建的download目录中 cd download 下载python3.7.1 wget https://www.python.org/ftp/python/3.7.1/Python-3.7.1.tgz 解压 tar -zxvf Python-3.7.1.tgz 切换到刚刚解压得到得文件夹 cd Python-3.7.1 安装配置 ./configure

随机推荐