Slide 22
Slide 22 text
receivePresent N+1
修正: 33922
↓延々コレ系
愚直にコード書き換え
生の PDO
でやるのプレースホルダ的にめん
どい
ヘルパを作るとよい
Go
のコードは sqlx
なので簡単そう
配列渡したらプレースホルダ作ってくれ
る
foreach ($list as $item) {
$sql = 'SELECT * FROM tbl WHERE id=?';
$stmt = $this->db->prepare($sql);
$stmt->bindValue(1, $item->id, PDO::PARAM_INT);
$stmt->execute();
}
$placeholders = implode(
',',
array_fill(0, count($list), '?')
);
$sql = "SELECT * FROM tbl WHERE id IN ({$placeholder
$stmt = $this->db->prepare($sql);
$pos = 1;
foreach ($list as $item) {
$stmt->bindValue($pos++, $item->id, PDO::PARAM_I
}
$stmt->execute();