NewVision WEB-development Team Blog

Tag Archives: whereIn

Doctrine_Query::whereIn c пустым массивом в качестве параметра

Если в update присутствует условие whereIn с пустым массивом в качестве параметра, то оно не учитывается при запросе.
Например, функция активации пользователей:
public function activateUsers(array $user_ids)
{
  Doctrine_Query::create()
    ->update("User u")
    ->set("u.is_active", 1)
    ->whereIn("u.id" , $user_ids)
    ->execute();
}
Если вызвать эту функцию с пустым массивом $user_ids, то проапдейтятся все записи из таблицы пользоватей (т.е. им проставиться is_active [...]