存储全局设置,可以从PHP的管理页面进行配置

时间:2011-08-14 02:31:14

标签: php web

我正在寻找能够从管理面板设置一些基本的站点范围设置(可能是布尔值或只是小数字)的最有效方法,并在每个页面上检索它们(通过公共文件)并存储在PHP变量中。

具体来说,我的网站上有一个积分系统,我希望其他网站管理员能够设置奖励和费用,并将它们存储在每个页面的变量中。< / p>

在研究流行的论坛软件如何存储设置时,他们使用了一个MySQL表,其行 id 名称名称是选项的名称,是所选值。我没有研究如何在代码本身中检索它,如果在每次运行common / header文件时检查它。在我看来,对于很少改变的设置,在每个页面上都有一个MySQL查询,效率不高。

我考虑的另一件事是拥有一个只存储JSON选项的文本文件。

让我知道其中一个想法是否有效,或者是否有更理想的东西。我对任何事都持开放态度。

2 个答案:

答案 0 :(得分:1)

存储应用程序范围的配置设置实际上是对数据库的滥用。虽然性能损失本身通常可以忽略不计。

最有效的方法当然是数据文件。您可以使用json_encode代替serialize,也可以使用以下内容生成有效的.php脚本:

file_put_contents("config.php",
     '<?php $config = ' . var_export($config_array, 1) . '; ?>');

如果您只需要一些设置,那么简单管理员ui的工作量也很小。

对于过度杀伤解决方案,请参阅http://milki.include-once.org/genericplugins/genconfig.html

答案 1 :(得分:0)

我见过一个php站点,它在php文件中存储常见的设置变量。 然后在其他php文件中你需要_once();