作为项目当中常用的功能之一,文件上传功能的实现思路理解是很有必要的。
一.在开始功能编码实现之前
我们首要的工作应该是利用phpinfo()
查看下文件上传的相关配置:
配置项 | 描述 |
---|---|
file_uploads | 是否支持文件上传 |
upload_max_filesize | 允许上传文件的最大长度 |
upload_tmp_dir | 临时目录 |
post_max_size | post数据的最大长度 |
max_file_uploads | 此项可以用于hidden表单,进行提交上传前的文件大小限制 |
二、文件上传功能的实现思路
1、通过$_FILES
获取上传文件信息
2、检查error,上传是否有错误
3、检查上传文件大小是否超过允许大小
4、检查文件类型是否是允许上传的类型
5、更名并把临时文件移动到我们指定的保存目录
三、封装文件类
1、我们需要把配置传入类中初始化给成员属性,如:允许大小、允许类型、保存目录、是否需要随机命名等。
2、一个给成员属性赋值的方法
3、检查文件保存路径是否存在、是否有写权限,没有则创建的方法
4、根据错误码返回错误提示信息,方便查错的方法
5、通过$_FILES设置相关文件属性的方法(方便多文件上传)
6、检查文件大小的方法
7、检查文件类型的方法
8、从临时文件夹移动文件到保存目录的方法
9、给上传文件随机文件名的方法
10、获取上传成功之后的文件名方法
以上是我个人简单总结的思路,每个人有不同的想法,仅以此文作为思路整理记录。
网友评论