2010-11-04 86 views
3

我正在做一个小实验。在过去,大多数人会将配置文件保存在一个php文件中,作为一堆常量或一个具有属性loooot的类。现在,我们看到像使用yaml或其他东西的symfony项目。我的问题是:PHP中的配置文件(XML与YAML与PHP文件)

如果你可以从三种不同的方式来存储你的配置文件:xml,yaml或php文件,你会选择哪一个?最重要的是:为什么?

感谢您的帮助

+1

用于配置的.ini文件也是一个选项,并且可能是最方便用户的 – stillstanding 2010-11-04 08:33:24

回答

8

对我而言,取决于谁将触摸该配置。

如果是开发者,那么PHP文件是最好的,因为它们不需要任何额外的解析。

如果是技术用户(例如,其他开发人员或系统管理员),则可以选择:复杂的配置文件最好使用结构化文件,如XML或YAML,因为破坏PHP代码的机会较少如果出现问题(并且您可以报告具体的解析错误并提供建议如何解决)。简单的选择可以用PHP编写(但如果有人忘记了引用字符,程序将会以奇怪的错误失败,或者如果错误只出现在日志中,那么根本没有错误!)。

如果它是最终用户......那么在我看来,根本没有配置文件应该暴露。你需要提供一个安装程序来处理所有的事情(并且生成机器可读的配置文件或者把事情写入数据库)。

+2

Palantir击中了头部。使用最灵活的解决方案,维护配置负责人仍然可以理解。这可以从最灵活/最技术端的php包含文件到最不灵活/技术最低端的全功能Web前端。 – 2010-11-04 07:27:07

+0

+1:我完全同意你的看法!自从我开始使用ASP.NET以来,我一直使用XML很长一段时间,但我总是希望我可以做一些不合时宜的事情。你有一个非凡的回应 – 2010-11-04 19:51:58