如何测试 Doctrine2 DQL 查询是否产生有效结果?
function search_event($parish, $genre, $pricerange)
{
$query = $this->em->createQuery('SELECT e from Events e WHERE e.parish = :parish AND e.genre = :genre');
$query->setParameter('parish', $parish);
$query->setParameter('genre', $genre);
$result = $query->getResult();
return $result;
}
在上面的示例中,如何测试 $result 是否有效?
function search_event($parish, $genre, $pricerange)
{
$query = $this->em->createQuery('SELECT e from Events e WHERE e.parish = :parish AND e.genre = :genre');
$query->setParameter('parish', $parish);
$query->setParameter('genre', $genre);
$result = $query->getResult();
return $result;
}
In the example above, how do I test if $result is valid?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以执行多种操作来检查返回的集合中是否存在实体。有关完整列表,请参阅 ArrayCollection可用的方法。
There are a number of things you can do to check if there are entities in your returned collection. See ArrayCollection for a full list of available methods.
如果
getResult()
返回(即,如果它不引发异常),则$result
是有效。 (它始终是结果数组;如果没有结果,则可以为空。)如果发生任何错误(格式错误的查询、连接重置或其他任何情况),则使用
createQuery()
或getResult ()
抛出异常。If
getResult()
returns (i.e. if it doesn't throw an exception), then$result
is valid. (It's always an array of results; which can be empty if there was no result.)If any error occur (malformed query, connection reset or anything else), ether
createQuery()
orgetResult()
throw an exception.