PDOのプレースホルダからIN演算子を使いたい(けど,使えない)

PDOのプレースホルダから,IN演算子を使いたくて試してみたけど,どうにも使えない.

Zend_Db_Selectから以下のようなコードを書くと,

<?php
$select = Zend_DBオブジェクト->select();
// ごにょごにょ
$select->where('condition IN(?)', array('hoge', 'fuga'));
?>

こんな感じのSQLが生成される.

SELECT ごにょごにょ WHERE condition IN ('hoge', 'fuga');

PDOのプレースホルダで投げようとするとエラーになってしまう.

<?php
// Array to string conversionっていうエラーが返ってくる
$pdo->query('SELECT ごにょごにょ WHERE condition IN(?)', array(array('hoge', 'fuga'))->fetchAll();
// エラーにはならないけど,もちろんちゃんと動かない.
$pdo->query('SELECT ごにょごにょ WHERE condition IN(?)', array("'hoge', 'fuga'")->fetchAll();
?>

何か根本的な勘違いをしているのだろうか...
Zend_DB_Selectのように,コード側で動的にSQL作る関数を用意しておくしかないのだろうか...

と言いつつ,いつもはループでOR演算子を繋げてます.


参考URL:
PDOを使用し複数キーワードでOR条件のDB検索