![]() |
1
1
XML路由在某种意义上工作得很好,它可以轻松地添加新的属性,并允许对属性进行分组。缺点是不可能使用SQL迁移或更新首选项数据。这必须通过程序来完成。如果需要,也不能查询单个属性的首选项。 总而言之,如果您维护少量的首选项,而这些首选项不需要通过SQL查询或更新它们,那么XML就可以很好地为您服务。否则,数据库中的名称、值对表将是更好的方法。 |
![]() |
2
2
如果已经有了数据库表,我会说使用一个数据库表,并将设置的名称划分为合理的类别:
除此之外,我更喜欢 yaml 为了可读性而转换为XML。它类似于XML,但没有任何混乱。
这个 Symfony YAML class 是一个将该文件解析为PHP数组的优秀独立库。 您还可以使用一个简单的PHP文件。
|
![]() |
3
1
我将使用XML文件(虽然它不需要是XML)——如果它是Java,我会使用属性文件直到找到一个不适用的原因)或单个键/值表(ID字段不会获得很多,除非它是一些外键来区分不同的安装)。 就我个人而言,我喜欢SQL的多功能性,并且拥有独立的东西。使用数据库并不会增加任何不存在的复杂性(例如,如果性能存在问题,您将不得不增长自己的XML缓存,那么您将免费获得相同级别的缓存)。只有当值具有非常复杂的结构时,我才会选择XML,这会使通过SQL进行操作变得很麻烦。 我不知道为什么你认为你需要“硬编码大量的值”,特别是为什么会有更多的硬编码与数据库解决方案比与文件解决方案。 |