2010-06-28 72 views
4

我的php程序被分解成模块,每个模块都有自己的设置。这些设置几乎不会改变,所以将设置放在ini文件或mysql数据库中会更好吗?mysql vs ini文件?

如果我使用ini风格,那么更新ini文件有多难?

+0

我的意思是使用php进行更新有多难。 – WAC0020 2010-06-28 13:21:04

+2

继承人好几种技术的比较http://www.phpro.org/articles/Application-Configuration.html另外,你可以让你的客户使用标准的HTML表单编辑ini文件的GUI工具。看一下Phpclasses.org - 那里曾经有一个。 – Cups 2010-06-28 13:28:27

+0

请务必考虑部署问题。如果您有配置文件或数据库,是否在主配置服务器URL上有一个副本?或者每个部署都有单独的配置。如果您使用关系数据库,那么您将在哪里存储设置数据库的设置? – maxwellb 2010-06-28 13:34:31

回答

3

一个简单的配置文本文件有几个优点。大多数情况下,您可以使用版本控制系统比较修订版本并列出配置文件的历史记录。 另一个优点是,您不需要特殊的工具来编写/更改配置设置。只需启动一个文本编辑器(VI即是;-))

1

如果我使用ini风格,那么更新ini文件有多难?

与打开编辑器一样困难(例如,两个击键:vi)。你应该正确记录你的设置。无论如何,这种方法应该优先于在数据库中存储配置设置(甚至很少使用的配置)。

1

静态站点范围的配置设置可能最好存储在配置文件(INI或XML)中。用户特定的配置设置(即用户指定的主题,语言选择)可能更好地存储在数据库中(尽管您可以将它们存储在唯一命名的配置文件中)。

至于更新ini文件有多难:这取决于您存储在其中的设置数量。为了让自己更容易一点,你可以为每个模块创建段,所以你可以跳到相关部分并快速更改配置变量。

即。

[module1] 
var1=value1 
var2=value2 
... 
[module2] 
varX=valueX 
varY=valueY 
... 
+0

你能说出你为什么这么说吗? – nawfal 2015-01-11 18:36:09

1

您也可以取出中间人并将配置存储在PHP数组中(无需解析INI或XML,或者其他任何案子)。真的取决于谁最终会维护文件(开发者或非开发者)