2012-03-31 40 views
1

我具有以下存儲庫:學說直接提取一個對象不是在陣列

public function findClassPhotoByPath($path) 
{ 
    return $this->getEntityManager() 
     ->createQuery('SELECT p FROM KSRGalleryBundle:Photo p WHERE p.category = :category AND p.path = :path') 
     ->setParameters(array('category' => 'class_photo', 'path' => $path)) 
     ->setMaxResults(1) 
     ->getResult(); 
} 

當我現在使用這種存儲庫方法的對象是一個數組內,我有通過$相片[0]來訪問它。

是否有可能通過findOneBy()直接獲取直接的情況?

最好的問候, 博多

回答

7

您可以使用getSingleResult()。其他選項也爲check here

編輯:

如果你不想趕NoResultException你也可以使用getOneOrNullResult()方法。

+0

這就是我正在尋找的,謝謝你! – bodokaiser 2012-03-31 10:37:39

+1

只要小心總能獲得一個結果。沒有結果將拋出異常。 – Cerad 2012-03-31 13:03:24

+2

@Cerad,對。這可以使用'getOneOrNullResult()'方法來避免。 – 2012-03-31 19:05:58

相關問題