什么应该是在PHP中存储用户首选项的最佳位置:数据库还是文件?

时间:2013-09-26 17:09:35

标签: php sql database file text

我正在使用PHP开发一个网站,我想知道在数据库或public_html文件夹之外的文本文件中存储用户首选项(如语言,背景图像等)是否更好(防止公众访问信息)。

我问这个是因为我担心PHP读取文件和向数据库发送查询所花费的时间,也可能因为多个用户发送的查询量而导致数据库速度变慢。

4 个答案:

答案 0 :(得分:1)

通常我会将用户定义的选项存储在数据库中。

一些提示:

  • 我只在请求中加载一次
  • 如果我必须使用关系数据库,有时我会将用户的所有设置存储在blob中。这很脏,但我可以轻松添加新属性
  • 在高流量网站中,我会使用我的MVC框架的缓存机制来缓存检索到的对象
  • 如果缓存到文件系统成为问题,您可以使用Redis,MemCached等数据库

答案 1 :(得分:0)

通常我们不会将文件放入数据库,但请阅读此内容并与您的情况进行比较:https://stackoverflow.com/a/22804/1529139https://stackoverflow.com/a/3751/1529139

答案 2 :(得分:0)

对不起语言问题..

这完全取决于您的网站行为。您的项目在哪种类型。如果您正在使用MVC结构,那么在您的bootstrap php页面的位置创建任何目录。意思是主页。并将您的来源存储在那个地方。

然后设置特定的设置菜单(页面),这将有助于动态更改源标识和位置路径。

答案 3 :(得分:0)

首选存储在数据库中,尤其是以后必须在服务器之间加载平衡时。