$_FILES超级全局变量很特殊,他是预定义超级全局数组中唯一的二维数组。存储各种与上传文件有关的信息,这些信息对于通过PHP脚本上传到服务器的文件至关重要。
userfile为文件上传表单input的name属性,此函数中总共有5项:
1. $_FILES["userfile"]["name"]:指定客户端机器上声明的文件最初的名字,包括扩展名。
2. $_FILES["userfile"]["size"]:指定从客户端上传的文件的大小,以字节为单位。
3. $_FILES["userfile"]["tmp_name"]:指定上传到服务器后为文件赋予的临时名。这是存储在临时目录(由PHP指令upload_tmp_dir指定)中时所指定的文件名。
4. $_FILES["userfile"]["type"]:指定从客户端上传的文件的mime类型。因此,在vacation.jpg文件的例子中,此变量会赋值为image/jpeg。
如果上传的是PDF,则赋值为application/pdf。因为这个变量有时会得到意外的结果,所以应当在脚本中显示地进行验证。
5. $_FILES["userfile"]["error"]:提供了文件上传相关的错误代码。总共有5个不同的返回值,其中一个表示成功的结果,另外4个表示在尝试中出现的特殊错误。
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,没有文件被上传。
UPLOAD_ERR_NO_TMP_DIR
其值为 6,找不到临时文件夹。PHP 4.3.10 和 PHP 5.0.3 引进。
UPLOAD_ERR_CANT_WRITE
其值为 7,文件写入失败。PHP 5.1.0 引进。
以上就是PHP超全局变量$_FILES的全内容,欢迎大家学习。