我知道如何检索TWIG中的所有对象值,但是如何从查询对象的纯PHP中访问它们。像$ display-> item或$ display.item这样的东西,但这些都不起作用。我错过了什么吗?
$query = $em->createQuery(
'SELECT obj
FROM AppBundle:itemInfoDb obj
WHERE obj.sku = :sku'
)->setParameter('sku', $nextSku)
->setMaxResults(1);
$display = $query->getSingleResult();
答案 0 :(得分:1)
使用 getters 方法访问属性:$display->getItem()
。顺便说一句,你可以更好地使用getOneOrNullResult()
方法来做到这一点:
// Get exactly one result or null
$object = $em->createQuery($dql)
->setMaxResults(1)
->getOneOrNullResult();
if (null !== $object) {
$object->getId();
}
区别在于getSingleResult()
不允许空结果,因此抛出NoResultException
异常。
否则,您需要捕获异常:
try {
// Gets the single result of the query.
$object = $em->createQuery($dql)
->setMaxResults(1)
->getSingleResult();
$object->getId();
} catch (\Doctrine\ORM\NoResultException $e) {
// null result
}