所以我想在一个目录中存储大约4k个图像,如下所示:uploads/uniqid()./file.jpg
和uploads/uniqid()./thumb/file.jpg
现在,问题是我想要的方式,我不认为这是最好的方式。
我想要一个表,我存储的活动目录名称中包含的图像少于4k。
因此,当用户上传图像时,我将进入该目录计算文件,如果它少于4k我将在那里上传图像,如果目录中有4000个图像我将使用创建新目录名称uniqid()
并将文件放在新目录中,我还将使用新的活动目录名更新表。
我认为这个解决方案没问题,只是每次用户上传图片时我都要计算文件,你觉得怎么样?
答案 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
}