$_FILES数组详解

$_FILES数组详解

​ form表单数据编码类型由enctype决定,进行文件上传时其属性值需设置为multipart/form-data。如存在以下文件域,myFile为文件域的name属性:

这里写图片描述

​ 文件上传后,文件信息自动保存在预定义变量$_FILES数组中。

这里写图片描述

1. 文件原始名称


$_FILES['myFile']['name']

2. 文件临时路径

临时文件路径可以在PHP.ini中upload_tmp_dir选项进行设置,未指定时使用系统默认存储路径C:/windows/temp进行存储。


$_FILES['myFile']['tmp_name']

3. 文件内容类型

常见文件类型:image/jpeg,image/png,image/gif,text/html,text/javascript


$_FILES['myFile']['type']

4. 文件上传错误代码

0:文件上传至临时路径成功

1:上传的文件超过了php.ini中upload_max_filesize选项限制的值(默认2M)。

2:上传的文件大小超过input标记设置的MAX_FILE_SIZE值。可以通过实现浏览器对文件大小的初步判断。此隐藏域必须在文件域之前设置。

这里写图片描述

4:没有文件被上传

6:找不到临时文件

超过POST_MAX_SIZE(默认8M)时,数组$_FILES为空,此时无错误代码提示。超过UPLOAD_MAX_FILESIZE(默认2M)时,但没有超过8M,数组中可以查看error信息。


$_FILES['myFile']['error']

5. 文件大小
单位为字节


$_FILES['myFile']['size']