使用XML或Serialize()将数据保存到PHP中的数据库是否更快?

时间:2011-09-25 04:14:16

标签: php xml serialization customization

我有一个项目需要大量的自定义。

因此,我正在寻找一种在运行时速度最快(或接近最快)的方法,并且可以稳定地保存可变数量的自定义字段。

例如:

这两个位置保存相同的2个数据字段。

在#1位置,必须以number_format($num, 3)格式返回两个字段,而在#2位置,这两个相同的字段是不需要格式化的文本字段。

我正在尝试找到保存/检索这些字段格式的最佳方法(如上所述)。

截至目前,我倾向于保存XML和serialize(),但在运行时,为了优化速度,我只会轮询serialize()数据。这种方法可以减轻我对serialize()数据中数据损坏的担忧,因为我可以在必要时手动解析XML文档中的数据。

注意:我只关心如何的格式/样式/等 操纵要查看的字段,而不是实际存储数据 在那些领域。

我个人不希望将此自定义数据保存为服务器上的原始文件,因为这是数据库的用途,每个位置的自定义数据都相当小(最多40-50个字段)。

1 个答案:

答案 0 :(得分:1)

与XML相比,人类不太容易阅读(和编辑)序列化的值。但是,存在用于解析序列化数据的工具,如Serialized PHP library

另一方面,序列化值可以很容易地读回变量,比使用XML更容易。对于XML您需要创建一个能够将变量转换为XML并返回的“序列化器”。 PEAR中有一个(XML_Serializer),另一个XML Serializer is available in Symfony2

通常,不在dabase中创建数据库是明智的。如果需要,请确保您可以在以后更改应用程序设计时轻松更改。