为PHP配置管理

<p>我工作在PHP配置文件加载部分代码的重构。早些时候,我使用多个“INI”文件,但现在我打算去这将是包含该项目的所有配置细节单一的XML文件。问题是,如果有人想在INI或DB或其他任何与不是默认(在此情况下,XML)配置文件,我的代码应该处理的部分。 P&gt; </p><p>如果有人想要去像其他的ini配置选项,他将不得不创建INI文件类似,我的XML配置文件和我的配置管理器应该照顾一切都像解析,存储在缓存中。为此,我需要一种机制,可以说我的配置数据的适当界面,底层数据存储可以是任何东西(XML,DB,INI等)也是我不希望它依赖于这些基本存储和随时随地在未来这应该可扩展到其它文件格式。 P&gt;
</p>

12 浏览 1 回复
  gt   配置   文件   使用   一个  

回复

    <p>假设你想要使用一个类来处理这一切,你有3个选项: p&gt; </p><ol> <li>有一个名为像一个基类, 然后3实现类,,和 并且你必须选择正确的 li&gt; </li><li>:同上,但使用一个工厂来选择,根据关的东西通过。如果你喜欢通过 它将知道返回 使用实施 li&gt; </li><li>有称为类 它充当第2步,但创建,包含和拥有,3个其他类。 li&gt; OL&gt; <p> 3的非基础类只想知道如何阅读该类型的配置文件,并将信息传递回一个通用的方式。沿着接口的线想:你知道你可以得到的数据,但你不关心如何 P&gt; </p><p>我建议选择3,因为它将使生活最简单的。你必须要添加的存储方法每次做修改一点点,但也只是添加一点点进入 类。 P&gt; </p><p>有一种方法可以让100%的动态,但是这将问题复杂化了,我不认为你真的需要它这一点。 P&gt; </p><p>看一看 Zend_Config的。它提供适配器阵列,XML和伊尼斯。像在Zend框架的所有组件,它可以从剩余的框架中使用隔离。即使你不想使用它,它是精心设计的,你可能会从中获得自己的配置管理器的一些想法。 P&gt;
    </p></li></ol>

    李滟

相关信息

在mysql VS INI文件?

<p>我的PHP程序被分解成模块,每个模块都有自己的设置。这些设置将很难改变,因此会是更好地把设置在ini文件或在MySQL数据库? P&gt; </p><p>如果我的INI风格走那么有多难更新ini文件? P&gt; </p>

18 浏览 1 回复   配置   文件   设置   ini   gt  

在PHP配置文件(XML VS YAML与PHP文件)

<p>林做了一个小实验。在过去,大多数人都会保存在一个PHP文件作为一堆常数或属性的loooot类的配置文件。现在,我们看到使用YAML或别的东西symfony这样的项目。我的问题是: P&gt; </p><p>如果你可以从三种不同的方式来存储你的配置文件挑:XML,YAML或php文件,其中一个你会选?最重要的是:为什么? P&gt; </p><p>感谢您的帮助。 P&gt; </p>

9 浏览 1 回复   文件   配置   php   gt   配置文件  

Lua中在.NET配置了​​XML / YAML / INI?

<p>我使用了XML,INI和YAML文件在Python的配置,以及在.NET C#应用程序。 P&gt; </p><p>我最近研究了LUA语言,并试图在其.NET平台的实现。我去找Lua的配置似乎更加干净和可读性。此外它提供脚本的能力。 P&gt; </p><p>因为我听说Lua的源代码库是非常小的,它仅使用表的数据结构...

浏览 1 回复   gt   lua   配置   net   使用  

ClickOnce的配置部署 - 配置文件

<p>我部署使用ClickOnce应用程序,问题是,在配置文件(xxx.exe.config)未嵌入包,也没有选择将其包含。随着配置的另一个问题是,当我试图手动编写它在那里delopyed目录(Environment.CurrentDirectory)我发现了一个例外 - 我没有权限,要做到这一点 P&gt; </p><p>如何随着配置文件部署应用程序的...

5 浏览 1 回复   文件   gt   配置   程序   应用程序  

.NET Compact Framework的配置文件

<p>我正在开发一个<strong>的Windows Mobile 5.0或以上 STRONG&gt;使用WinForm应用程序的<strong> .NET Compact Framework的2.0 SP2 STRONG&gt;和<strong> C# STRONG&gt; P&gt; <p>我需要使用配...

9 浏览 1 回复   gt   加密   配置   文件   strong