Score
0
Watch 318 Star 1.2K Fork 506

GVPAnyon / ThinkAdminPHPMIT

文件上传文件弊端,建议自定义上传文件目录

Rejected
麦客  Opened this issue

文件上传如果是如自定义上传文件目录,在上传目录下面生成以当前日期为子目录,以微秒时间的md5编码为文件名的文件会更好,方便管理每个文件,和某个模块的文件

1206951 herufeng 1578946176 126695 zoujingli 1578918740 total 3 participants

Comments (7)

1206951 herufeng 1578946176
麦客 2020-06-15 23:42

如果现在决定某个模块突然不用了,要永久下架某个模块,那么这个模块下上传的文件就很难找到并删除了,很不好管理文件,特别是模块特别多的项目,文件会很乱

126695 zoujingli 1578918740
Anyon 2020-06-16 17:08 owner

现在文件是基于hash存储,如果更改目录,无法做到秒传

隔壁老李 2020-06-17 17:21

把上传后的文件都记录到数据库中,然后做成可视化的文件管理功能,

1206951 herufeng 1578946176
麦客 2020-06-19 17:43

现在文件是基于hash存储,如果更改目录,无法做到秒传

@Anyon 这样秒传是很快,但是项目就有一个弊端,如果项目上线运行几年了,那在upload目录下就会有很多很多的文件夹,而且每一个文件夹下太部分只有一个文件或几个,项目上线运行几年可能就会在upload目录下有几十万上百万个甚至更多文件夹了,这样前台用户浏览的时候就会拖慢速度。

126695 zoujingli 1578918740
Anyon 2020-06-23 10:16 owner

@麦客 这种只能自己只加一层文件记录,与业务功能关系。
判定一个文件使用为0时,触发删除文件。
数据表,文件名,文件链接,使用次数,初次上传时间。。。

1206951 herufeng 1578946176
麦客 2020-07-01 22:51

@麦客 这种只能自己只加一层文件记录,与业务功能关系。
判定一个文件使用为0时,触发删除文件。
数据表,文件名,文件链接,使用次数,初次上传时间。。。

@Anyon 好吧,上传的秒传功能是很好,只是对项目的文件管理不方便,也不可能说判定一个文件使用为0时就触发删除文件,即使是很久上传的,只要内容页面还在就不能去删除,除非把那个页面的内容从数据库删除了,页面不用了才能删除对应的图片,不然只要页面还在就永远不可能删除图片,即使这个页面的图片两三年没有使用一次也不能删除,不过只是文件管理不方便,如果模块多的项目那文件就非常不方便管理,文件管理太乱了,除了文件上传外其它非常好,非常好的开源项目 :thumbsup: :thumbsup:

126695 zoujingli 1578918740
Anyon 2020-07-03 17:49 owner

目前是统一文件上传,加层管理还是比较方便。要兼容 云存储

Sign in to comment

Assignees
Labels
Not set
Projects
Milestones
Branches
Planed to start
Not set
Planed to end
Not set
Top level
Priority
PHP
1
https://gitee.com/zoujingli/ThinkAdmin.git
git@gitee.com:zoujingli/ThinkAdmin.git
zoujingli
ThinkAdmin
ThinkAdmin

Search