次のクエリと同等のものを使用して、データベースからレコードを選択しています。
SELECT * FROM reports WHERE user_id IN (3, 6, 22);
fetchAll() を呼び出す関数には、ユーザー ID の配列である引数があり、この呼び出しは問題なく機能します。
$resultSet = $this->getDbTable()->fetchAll('user_id IN (' . implode(', ', $userIds) . ')');
ただし、後でクエリに他の制限がある可能性が高いため、where句に配列を使用したいと思います...そして、一生それを理解することはできません。私はそれが次のいくつかのバリエーションになると思いました:
$resultSet = $this->getDbTable()->fetchAll(array('user_id IN ?' => '(' . implode(', ', $userIds) . ')'));
しかし、これまでのところサイコロはありません。誰かがここで正しい構文を提供できますか?