![]() |
1
3
在这三个选项中,静态方法可能是最好的。 实际上,“最好的”最终是关于什么是最容易使用和最一致的。如果应用程序的其余部分没有使用任何OO代码,那么您也可以使用选项1。如果您最终想要编写一个完整的DB抽象层,选项2。 不知道你的目标是什么,不知道你的应用程序的其他部分是什么样子,这有点像问别人什么是最好的汽车——这是一个不同的答案,取决于你是在寻找一辆跑车,一辆货车,还是一辆摩托车。 |
![]() |
2
1
我会带着门后的东西走。 它看起来比2更容易阅读和理解,并且似乎比1更好地满足您的需求。 |
![]() |
3
1
查看这个问题,了解如何将配置数据存储在单独的文件中: Fastest way to store easily editable config data in PHP? 我将使用方法2从外部文件中提取配置数据作为数组。 |
![]() |
4
1
这个 最好的 方法是最适合您的应用程序。 对于一个小应用程序,使用数组可能完全足够,即使它是可变的。如果除了你没有人可以修改它,那么它不一定是不变的。 第二种方法非常灵活。它封装了数据,但对它一无所知。你可以自由地传递它,消费类可以从中获取他们需要的东西。它足够通用,可以重用,并且不会将config类与具体应用程序耦合。您还可以使用具有此类或类似类的接口,以允许方法签名中的类型提示指示需要配置。不要把它命名为stddataclass,而是用它的角色命名:config。 第三种解决方案非常具体。它将许多关于应用程序需要什么的假设硬编码到类中,并使类有责任通过getter和setter了解和提供这些数据。根据需要配置的组件的数量,最终可能会得到许多特定的getter。很有可能你将不得不为你的下一个应用重写整个东西,因为你的下一个应用有不同的组件。 我会采用第二种方法。另外,看看 Zend_Config ,因为它已经满足了您的所有要求,让我们从XML、ini和普通数组初始化配置对象。 |