gpt4 book ai didi

php - 如何在 symfony2 中使用 doctrine findOneBy 方法返回数组而不是对象?

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:02:47 30 4
gpt4 key购买 nike

我有一种情况,我想使用 symfony2 中的 doctrine 中的 findOneBy($id) 方法查询数据库。

$namePosting = $this->getDoctrine()->getRepository('MyBundle:Users')->findOneById($userPosting);

结果是一个具有 protected 属性的对象。我想直接返回一个数组。如何才能做到这一点 ?

最佳答案

findOneBy(array()) 将始终返回 null 或对象。

但是您可以改用 findById($userPosting)findBy(array('id' => $userPosting)) 它将返回一个数组,例如:

$this->getDoctrine()->getRepository('MyBundle:Users')->findById($userPosting))

已编辑

或者你可以在UserRepository类中添加一个方法:

    use Doctrine\ORM\EntityRepository;
use Doctrine\ORM\Query;

class UserRepository extends EntityRepository
{
public function getUser($userPosting)
{
$qb = $this->createQueryBuilder('u')
->select('u')
->where('u =:userPosting')->setParameter('userPosting', $userPosting)
->getQuery()
->getResult(Query::HYDRATE_ARRAY);

return $qb;
}
}

关于php - 如何在 symfony2 中使用 doctrine findOneBy 方法返回数组而不是对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23681567/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com