【发布时间】:2014-11-10 11:56:36
【问题描述】:
我有一个简单的用户评论系统。这些可以带有图像。目前我将用户上传的图像存储在一个文件夹中。我不会为图像向数据库写入任何内容,很简单,我用评论 ID 命名图像文件(每个评论只允许一张图像)并将它们全部存储在一个文件夹中:
move_uploaded_file($upload_pic,'images/'.mysql_insert_id().'.jpg');
//please note I am also upgrading to mysqli
然后在从数据库中检索评论数据时,我正在使用 file_exists() 检查并可能显示带有评论的完整图像。
if (file_exists('images/'.$fid.'.jpg')) echo '<img width="576" src="images/'.$fid.'.jpg">';
现在我想对其进行更改,以便能够在每个帖子中存储和显示更多图像(仍然限制为 4 个),并且还具有缩略图。
问题来了
对于这样简单的系统,将所有文件引用存储在数据库中的单独表中或增强与评论ID相关的文件命名是否更快?
- 如果数据库 - 如何命名文件? using uniqid ?简单映射表 id,imgname。
- 如果文件命名我在想
XXXXXX-Y.jpg并使用glob("images/".round(XXXXXX/1000)."/XXXXXX-*.jpg")检索,一个文件夹中最多有1000 个文件。 (目前在过去 10 年的 10.5 万条帖子中有 6.5 万张图片)
对我来说,文件命名似乎更简单,因为我不需要存储与图像相关的任何其他信息,但另一方面似乎大多数人使用数据库。并希望专注于表现更好的方式。
【问题讨论】:
标签: php mysql file-upload