Is it possible to use OR statement in Doctrine findBy() method?
I know that given array is interpreted as case1 AND case2...
Like this
$this->repos['notif']->findBy(array('status' => 1, 'status' => 2, 'status' => 3);
Stands for
SELECT * FROM `notif` WHERE status=1 AND status=2 AND status=3;
Now I need something to stand for:
SELECT * FROM `notif` WHERE status=1 OR status=2 OR status=3;
Is there a way to get all cases?
As far as I know this is not a supported feature by Doctrine to use IN() queries with findby. You could do two things:
Implement a
findByStatus(array $statusTypes)method in your (custom) ‘notif’ repository class. If you like this approach I can give you a example.Convert your findBy to the following:
That should work either 🙂