我试图从教义中获取单一信息。示例我希望通过其$id
从doctrine中查找数据,但问题是该列与许多其他字段相关,例如它正在打印一千行数据。
我只需要找到该ID的名称,有没有人知道我该怎么做?仅通过查找其$id
来显示名称。
$request = $this->getRequest();
$doctrine = $this->getDoctrine();
// Find selected publisher
$criteria = array('id' => '101', 'active' => '0');
$result = $doctrine->getRepository('MyBundle:AllChannel')->findBy($criteria);
答案 0 :(得分:2)
最好的方法是将结果保存为数组。
示例:强>
$result = $this->getDoctrine()
->getRepository('MyBundle:MyEntity')
->createQueryBuilder('e')
->select('e.name')
->where('e.id = :id')
->setParameter('id', $id)
->getQuery()
->getResult(\Doctrine\ORM\Query::HYDRATE_ARRAY);
注意:以上示例未经过测试,仅作为指示。
答案 1 :(得分:0)
我认为在这种情况下你需要的是getArrayResult()
$qb = $this->em->createQueryBuilder();
$qb->select('channel');
$qb->from('MyBundle:AllChannel channel', '');
$qb->where('channel.id = :id');
$qb->setParameter('id', $id);
$result = $qb->getQuery()->getArrayResult();