使用 Zend Framework 2 将 Doctrine 2 实体持久集合转换为数组的最佳方法



使用 Zend Framework 2 将 Doctrine 2 实体持久集合转换为数组的最佳方法(简单)是什么?我想转换为数组,然后使用 JsonView 输出它。我可以编写使用get_object_var的函数,但是当实体具有下一个实体集合时,这是一个问题。

问候。

不确定 Zend,但在 SF2 + Doctrine 中您可以使用getValues()方法。

$asArray = $persistentCollection->getValues();
我将把

答案分成两部分,主要是因为你还没有足够澄清,如果你想纯粹解决 PersistentCollection 或整个图形序列化。

1-假设您已经知道如何解决实体的序列化,则可以通过调用toArray()方法将PersistentCollection转换为实体数组。

2-假设你不这样做,我建议你使用像JMS序列化程序这样的预构建库。如果要手动创建自己的实例,请使用可从 EntityManager->getClassMetadata(get_class($someEntity)) 中提取的 ClassMetadata 实例,并循环访问 fieldMappings 和 associationMappings 属性。

最新更新