“最好的”取决于你的目标.
原文链接:https://www.f2er.com/php/132040.html存储用户上传的图像的两种主要方式是将二进制内容作为BLOB放入数据库,或者将图像存储在驱动器的某处,并将一个条目放入数据库,指示哪个图像属于哪个.
将图像放置在数据库中具有不需要对Web服务器进行任何类型的文件系统权限的优点,并且如果从多个网络服务器提供站点,则可以删除任何类型的同步问题.然而,随着时间的推移,它使您的数据库变得巨大,如果您不正确地设计表,那么它绝对会降低您的性能和可扩展性.
将图像作为文件存储在文件系统上具有使检索非常快速和高效的附加优点,因为网络服务器非常适合提供静态文件.
编辑添加
如果您决定将文件内容存储在数据库中,绝对不要将其放在需要快速访问的表中.例如,如果您在几乎每个页面浏览中都有一个“users”表,那么该表不是放置文件内容的地方.而是创建一个单独的“图像”或“文件”表,其中包含文件和相关的元信息.
将一行中的字节数放在一个表中使得该表非常缓慢.你不希望在表中看到很多用途的东西.