所以,经过数周的研究,我最终决定在我的粉丝网站画廊的数据库模型上:
我有图像,每个图像都有不同的大小,位于 2 级文件系统结构中。
每个图像最多有 5 种不同的尺寸(小、拇指、中、大、超大)。尺寸基本上是我在图像名称末尾添加的后缀。
一级目录为图片名右起最后一个整数,二级目录为右起第二个整数……</p>
我在 php 中有一个常量变量,它定义了图像主文件夹的根目录:
define('IMAGE_PATH', '…/images/')
因此,图像路径可能如下所示:
…/images/6/7/3346642.4565676.jpg
以及该图像的小尺寸:
…/images/6/7/3346642.4565676_s.jpg
…大号:
…/images/6/7/3346642.4565676_l.jpg
等等……</p>
表格如下所示:
image (image_id, title, caption, file_dir, file_name, file_ext, update_date, upload_date)
image_size (size_id, name, suffix)
image_data (image_id, size_id, width, height)
这是问题。我不需要file_dir
,甚至不需要,file_ext
因为我可以使用 PHP 或在查询中获取那些(使用substring
and concat
)但是,我读过在查询中使用子字符串很昂贵......我想如果我已经在表中有这些,它更快,无需在查询中使用 php 或函数……你觉得呢?将这些值放在表格中是否太过分……多余?
我可以只有文件名(即:3346642.4565676.jpg
,然后让 PHP 或查询从图像文件夹中找出相对路径,或者我可以在表中分别拥有文件目录和文件扩展名……</p>
有什么建议么?