php中文件上传需要注意的几点
1、首先要开启php.ini中的文件上传,打开php.ini 配置文件,查找 File Uploads ,在这个区域有以下3个选项:
;;;;;;;;;;;;;;;; ; File Uploads ; ;;;;;;;;;;;;;;;; ; Whether to allow HTTP file uploads. ; http://php.net/file-uploads file_uploads = On ; Temporary directory for HTTP uploaded files (will use system default if not ; specified). ; http://php.net/upload-tmp-dir upload_tmp_dir = ; Maximum allowed size for uploaded files. ; http://php.net/upload-max-filesize upload_max_filesize = 2M ; Maximum number of files that can be uploaded via a single request max_file_uploads = 20
是否允许HTTP文件上传。默认值为On允许HTTP文件上传,此选项不能设置为Off。
file_uploads = On
文件上传的临时存放目录。如果没指定则PHP会使用系统默认的临时目录。该选项默认为空,此选项在手动配置PHP运行环境时,也容易遗忘,如果不配置这个选项,文件上传功能就无法实现,你必须给这个选项赋值,比如upload_tmp_dir = "d:/fileuploadtmp" ,代表在D盘目录下有一个fileuploadtmp目录,并且给这目录读写权限。
upload_tmp_dir =
上传文件的最大尺寸。这个选项默认值为2M,即文件上传的大小为2M
upload_max_filesize = 2M
2、文件上传表单的提交方式必须是post,即<form method=”post”>;
3、上传表单一定要记住在form标签中写上enctype=”multipart/form-data”;
4、设定 type=”file” 的表单控件,并且必须具有name属性值;
5、 为了上传成功,必须保证上传文件的大小是否超标、文件类型是否符合要求,上传后存放的路径是否存在;
6、在php.ini中有一个允许上传的最大值,默认是2MB。必要的时候可以更改;
7、表单提交到接收页面,接收页面使用$_FILES来接收上传的文件。$_FILES是个多维数组。第一维下标是上传控件的name,二维下标分别
为name/type/tmp_name/size/error。分别代表文件名、文件类型、上传到临时目录下的临时文件名、文件大小、是否有错误。如果是批量上传,那么二维下
标就是数组,而并非是字符串。
8、 文件上传后是被放置在服务器端临时路径下,需要使用move_uploaded_file ()函数,才可以将上传后的文件保存到指定目录。
9、为了避免上传文件重名,可以通过上传的文件名获取到文件后缀,然后使用时间戳+文件后缀的方式为文件重新命名。
本文来自博客园,作者:郭德纲又打人了嘿,转载请注明原文链接:https://www.cnblogs.com/blibli/p/7648004.html