从doctrine2中的对象到数组

时间:2017-01-31 09:51:29

标签: php object serialization doctrine-orm extraction

我正在使用Doctrine 2 ORM将我的SQL表映射到对象中。 是否有像asArray这样的支持方法将我的对象转换为数组?

1 个答案:

答案 0 :(得分:1)

您只需使用the Doctrine 2 documentation chapter 14.7.4.2. Array Hydration中提到的getArrayResult方法:

$array = $query->getArrayResult();

这是@Joucks在this answer指向的his comment的简短表示法,并且与the ArraySerializableInterface完全相同:

$array = $query->getResult(Query::HYDRATE_ARRAY);

但是,您不一定要查看特定的Doctrine ORM解决方案来获得此类序列化功能。您还可以查看您正在使用的PHP框架附带的解决方案。

的Zend-框架

例如,如果您使用Zend-Framework,则可以在希望能够序列化为数组的对象中实现Zend-Framework 2 Zend\Stdlib documentation

此接口包含getArrayCopy方法,该方法应将序列化的对象返回到数组。

您可以在this Serializer component

中详细了解ArraySerializable

Symfony的

Symfony附带{{3}}。

对于其他框架,我希望它们附带类似的接口/解决方案。