я выбор записей из базы данных, используя эквивалент этого запроса:Zend DB fetchAll(): где положение массив с оператором IN
SELECT * FROM reports WHERE user_id IN (3, 6, 22);
Функция вызова fetchAll() имеет аргумент, что это массив идентификаторы пользователей, и этот вызов работает просто отлично:
$resultSet = $this->getDbTable()->fetchAll('user_id IN (' . implode(', ', $userIds) . ')');
Однако, я хотели бы использовать массив для ИНЕК, потому что, вероятно, будут и другие ограничения на запрос позже ... и я не могу Подумайте об этом. Я думал, что это будет какая-то вариация на следующее:
$resultSet = $this->getDbTable()->fetchAll(array('user_id IN ?' => '(' . implode(', ', $userIds) . ')'));
Но до сих пор нет кубиков. Может ли кто-нибудь предоставить правильный синтаксис здесь?
Ну, это для fetchAll() вместо того, где(), но это билет. Я попробовал «user_id IN (?)» Раньше, но связал его с результатом от implode(), а не только от массива напрямую. – Cyranix