2010-07-21 143 views
0

我正在设计一个涉及太多照片的网站。Oraganize网站上的图片

有两个模块餐厅和菜肴。这是创建目录strcuture的最佳方式?

图像/餐厅/ ID 图像/菜肴/ ID

正在使用以下命令来创建文件名

function imgName($imgExtension) 
    { 
     return time() . substr(md5(microtime()), 0, 12) . ".".$imgExtension; 
    } 

II想要两个不同大小的缩略图。这是命名缩略图的最佳方式?

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

回答

1

我不会过分担心目录结构,你看起来不错,甚至更好使用S3存储桶。

至于文件名部分,我发现最简单的方法是将预先thumb_添加到缩略图文件名。所以:somefilename.jpg - >thumb_somefilename.jpg

这样,您可以将somefilename.jpg存储在数据库中,只需将额外部件添加到前面即可。

1

是否有任何理由随机化这样的文件名?我个人认为,你不应该在第一时间给他们随机的名字,他们应该与图片中的实际内容相关 - 只是因为它对用户更好,对搜索引擎更有意义。

在一个完美的世界里,你不得不喜欢

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

的逻辑结构,其中菜/餐厅的名字是一个独特的蛞蝓。但在现实世界中几乎不可能实现,因此

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

是避免碰撞的公平妥协。

大拇指一般我自己的大拇指/目录下放置,所以我可以用在所有的位置相同的文件名(懒惰比什么都重要):

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

但thenduks'前面加上建议工作过,这真的只是个人偏爱。