estoy seleccionando los registros de una base de datos utilizando el equivalente de esta consulta:Zend DB fetchAll(): donde matriz cláusula con el operador IN
SELECT * FROM reports WHERE user_id IN (3, 6, 22);
la función de llamada fetchAll() tiene un argumento que es un conjunto de los ID de usuario, y esta llamada funciona bien:
$resultSet = $this->getDbTable()->fetchAll('user_id IN (' . implode(', ', $userIds) . ')');
sin embargo, me gustaría utilizar una matriz para la cláusula where, porque es probable que haya otras restricciones a la consulta más tarde ... y no puedo resolverlo por mi vida. Pensé que sería una variación de lo siguiente:
$resultSet = $this->getDbTable()->fetchAll(array('user_id IN ?' => '(' . implode(', ', $userIds) . ')'));
Pero hasta el momento no hay dados. ¿Alguien puede proporcionar la sintaxis correcta aquí?
Bueno, es para fetchAll() en lugar de en(), pero eso es el billete. Intenté 'user_id IN (?)' Antes pero lo asocié con el resultado de implode(), no solo el arreglo directamente. – Cyranix