Я хочу посмотреть, есть ли в моей записи в базе данных похожие фотографии или нет. Но когда я звоню $car->getCarPhotos()
Я получаю экземпляр Doctrine\ORM\PersistentCollection
, а также var_dump
показать тот же результат для автомобиля, у которого есть фотографии, и для автомобиля, у которого нет car_photos. Где моя проблема? Пожалуйста, помогите мне.
Так что тебя беспокоит? Предполагается вернуть вам коллекцию в обоих случаях. Чтобы проверить, есть ли у машины похожие фотографии:
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();
}
Который можно назвать if ($car->hasPhotos())
/**
* Count how many photos this car has.
*
* @return integer
*/
public function getNbCarPhotos()
{
return $this->carPhotos()->count();
}
Который можно назвать if ($car->getNbPhotos() > 0)
или же if ($car->getNbPhotos() !== 0)