我正在寻找方法,如何将查询生成器结果转换为关联数组。但我需要的是包含来自另一个表的关系数据。如果我使用 getArrayResult() 方法,它会给我一个数组,但没有外键。我需要嵌套数组中包含的外键以及关联数据库表的数据。 编辑: 这是我的代码:
$qb = $this->_em->createQueryBuilder();
$qb->select('p');
$qb->from('XXX\MyBundle\Entity\Entity1', 'p');
$qb->leftJoin('p.FK1','u');
$qb->andWhere('u.Attr1 = :attr1');
$qb->setParameter('attr1', $appId);
$qb->andWhere('u.Attr2 IS NULL');
$qb->leftJoin('u.FK2', 'v');
$qb->andWhere('v.Attr3 = :attr3');
$qb->andWhere('v.Attr4 IS NULL');
$qb->setParameter('attr3', $userId);
$result = $qb->getQuery()->getArrayResult();
由于 SOAP,我需要这种转换。它不能将复杂对象作为实体的嵌套对象返回。