このようなことをする必要があるとき:
SELECT * FROM userinfo WHERE id in (18,2,6,4,5)
id 配列は、次のような別のクエリから取得されます。
$ids = $conn->fetchAll('SELECT origin from action WHERE url = "'.$url.'" AND SUBSTRING(origin,1,3)<>"pct" GROUP BY origin');
クエリ ID に正しい形式を与えるために配列を解析する必要がある場合は、次のようにします。
$norm_ids = '(';
foreach ($ids as $ids) {
$norm_ids .= $ids['origin'] .',';
}
$norm_ids = substr_replace($norm_ids ,"",-1) .')';
それは次のようなIDを出力します: (id1,id2,id3,id.......)
、だから私はただ: FROM userinfo WHERE id in ". $norm_ids
;
しかし、私には醜いようです、これをより良くする方法はありますか?