在 Symfony 中调用 null 上的成员函数

Call to a member function on null in Symfony

在我的 Symfony 项目中,我使用 Doctrine 编写了一个查询 return 我将在我的自定义数组中显示的一个特定结果。

我经常收到错误消息:

Call to a member function getSeats() on null

我尝试了很多东西..

 return $this->createQueryBuilder("e")
        ->where('e.userId =:userId')
        ->setParameter('userId', $user)
        ->getQuery()
        ->getOneOrNullResult();

在我的数组中..

$reports = [
            'id' => $report['id'],
             ....
            'seats' => is_null($seats->getSeats()) ? 0 : $seats->getSeats()
        ];

我认为最好的方法是使用三元运算符,但运气不好/

我的实体对象:

/**
 * @ORM\Column(type="integer", options={"default":0})
 */
protected $seats;

is_null是正确的,但是你需要检查对象本身是否为空:

'seats' => is_null($seats) ? 0 : $seats->getSeats()