Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Image 组织网站上的图片_Image_Database_Photos_Storing Data - Fatal编程技术网

Image 组织网站上的图片

Image 组织网站上的图片,image,database,photos,storing-data,Image,Database,Photos,Storing Data,我正在设计一个网站,将涉及太多的照片 有两个模块:餐厅和菜肴。创建目录结构的最佳方法是什么 图片/餐厅/身份证 图像/盘子/ID 我使用以下命令创建文件名 function imgName($imgExtension) { return time() . substr(md5(microtime()), 0, 12) . ".".$imgExtension; } 我想要两个不同大小的缩略图。给缩略图命名的最佳方法是什么 由于数据库将只保存扩展名为的主图片文件名。我不太担心目

我正在设计一个网站,将涉及太多的照片

有两个模块:餐厅和菜肴。创建目录结构的最佳方法是什么

图片/餐厅/身份证 图像/盘子/ID

我使用以下命令创建文件名

function imgName($imgExtension)
  {
      return time() . substr(md5(microtime()), 0, 12) . ".".$imgExtension;
  }
我想要两个不同大小的缩略图。给缩略图命名的最佳方法是什么


由于数据库将只保存扩展名为的主图片文件名。

我不太担心目录结构,您所拥有的似乎很好,甚至更好的可能是使用S3存储桶

至于文件名部分,我发现最简单的方法是在thumb文件名前面加上
thumb
。所以:
somefilename.jpg
->
thumb\u somefilename.jpg


通过这种方式,您可以将
somefilename.jpg
存储在数据库中,并在需要拇指时将额外的部分添加到前面。

是否有任何理由像这样随机化文件名?我个人的观点是,首先你不应该给他们随机的名字,他们应该与图片中的实际内容联系起来——因为这对用户更好,对搜索引擎更有意义

在一个完美的世界里,你会有这样的逻辑结构

/images/dishes/moules-de-mariniere.jpg
菜肴/餐厅名称是唯一的鼻涕虫。但是,这在现实世界中几乎不可能实现,所以

/images/dishes/id/moules-de-mariniere.jpg
这是避免冲突的公平妥协

我通常将拇指放在自己的拇指/目录下,这样我可以在所有位置使用相同的文件名(懒惰比任何事情都重要):

但塞恩杜克斯的建议也很管用,这其实只是个人喜好

/images/dishes/id/thumbs/moules-de-mariniere.jpg