Php 我收到的是持久的收集,而不是ArrayCollection

Php 我收到的是持久的收集,而不是ArrayCollection,php,symfony,arraycollection,Php,Symfony,Arraycollection,我想看看数据库中的记录是否有相关照片。但是当我调用$car->getCarPhotos()时,我得到了doctor\ORM\PersistentCollection的实例,并且var\u dump对有照片的汽车和没有照片的汽车显示相同的结果。我的问题在哪里?请帮帮我。你有什么心事?在这两种情况下,它都应该返回您的集合。检查汽车是否有相关照片: if ($car->getCarPhotos()->isEmpty()) { // Car has no photos } else

我想看看数据库中的记录是否有相关照片。但是当我调用
$car->getCarPhotos()
时,我得到了
doctor\ORM\PersistentCollection
的实例,并且
var\u dump
对有照片的汽车和没有照片的汽车显示相同的结果。我的问题在哪里?请帮帮我。

你有什么心事?在这两种情况下,它都应该返回您的集合。检查汽车是否有相关照片:

if ($car->getCarPhotos()->isEmpty()) {
    // Car has no photos
} else {
    // Car has photos
}

应该是一个注释,但这对代码来说很糟糕

您可以在模型中添加一些方法之一,这些方法可以告诉您是否附加了任何照片

/**
 * Check if this car has any attached photos
 *
 * @return boolean
 */
public function hasPhotos()
{
    return false === $this->carPhotos()->isEmpty();
}
如果($car->hasPhotos())


可以称之为
if($car->getNbPhotos()>0)
if($car->getNbPhotos()!==0)

您可以包含一些相关的代码吗?
/**
 * Count how many photos this car has.
 *
 * @return integer
 */
public function getNbCarPhotos()
{
    return $this->carPhotos()->count();
}