Я найти сущность его ПК как следующие:Как проверить, найден ли объект в репозитории Doctrine2?
$ent = $em->getRepository('AppBundle:Representative')->find($id)
Что такое правильный способ проверить $ent
является ли реальным представителем объект или нет? То, что я имею в виду с real, состоит в том, что $ent
в настоящее время существует в БД и был возвращен, так как я планирую использовать тот же результат для и UPDATE
. В псевдо-коде, что на моей голове:
if (ent is Representative)
{
// Update its values
} else {
// Create a new Representative
}
я думал в использовании is_object()
или даже instanceof
, но я не уверен, что они будут делать эту работу или если $ent
будет объект, даже если представитель Безразлично» t существует в БД. Любые советы по этому поводу? Как я могу это достичь?
Я должен пропустить что-то, потому что, как я вижу это, либо ваш объект существует в БД и найти ($ ID) найдет ее, и будет представительным объектом, или он возвращает null, если не найден. Я не думаю, что есть необходимость проверить тип объекта ... –
@GuillaumeFache Итак, вы говорите, что правильный путь должен быть просто чем-то вроде '! $ Ent' или' $ ent! == null' on условный? Что? – ReynierPM
Запросы Doctrine по умолчанию должны возвращать Null, если объект не найден в базе данных. Если ваша проблема в том, действительно ли объект в базе данных действителен, вы должны посмотреть на проверку https://symfony.com/doc/current/book/validation.html – Squeegy