每个目录存储4000个图像文件

时间:2013-03-03 17:48:10

标签: php file-upload

所以我想在一个目录中存储大约4k个图像,如下所示:uploads/uniqid()./file.jpguploads/uniqid()./thumb/file.jpg

现在,问题是我想要的方式,我不认为这是最好的方式。

我想要一个表,我存储的活动目录名称中包含的图像少于4k。

因此,当用户上传图像时,我将进入该目录计算文件,如果它少于4k我将在那里上传图像,如果目录中有4000个图像我将使用创建新目录名称uniqid()并将文件放在新目录中,我还将使用新的活动目录名更新表。

我认为这个解决方案没问题,只是每次用户上传图片时我都要计算文件,你觉得怎么样?

1 个答案:

答案 0 :(得分:0)

计算文件的另一种方法是向表中添加计数器(即:autoincrement)字段,并在用户上传文件时在表中插入一行。然后,您可以使用mysql_insert_id()来获取刚刚插入的行的ID。

然后只需添加以下内容即可查看是否需要创建新目录:

if((mysql_insert_id() % 4000) === 0) {
   //create new dir name
   //insert new dir name into table as active dirname
   //add image to new folder
}
else {
   //add image to active directory
}