使用 PHP 中的类型将嵌套对象序列化/反序列化为 JSON

Chr*_*fer 5 php oop serialization json

我有扩展抽象类的类。我需要通过字符串创建这些类的实例 - 最好是 JSON。

许多对象是嵌套的,许多属性是私有的。我需要一种方法:

  1. 创建完整对象的 JSON 字符串(带有私有属性和嵌套对象 - 带有它们的私有属性)。
  2. 从 JSON 字符串创建一个新对象,具有正确的类型和所有嵌套对象。

我想它需要是递归的。

如果我只是将对象转换为数组,我正在使用最终看起来像废话的命名空间。

我正在考虑编写一个解析器,在我的 JSON 字符串中标记类,然后为每个类硬编码一个工厂函数,但这需要很多时间。

Mop*_*ppo 1

我建议你使用php的序列化功能

在这种情况下,最好使用此函数,因为它的存在就是为了这个目的:您可以将序列化的字符串存储在任何您想要的地方,并且在反序列化后,您将返回具有所有属性的原始 PHP 对象

使用 JSON,正如您所说,您将不知道该对象是什么类(除非您手动将其存储为字符串),当然还会存在与私有属性相关的所有问题