PDO adalah pembungkus database yang dapat melakukan banyak hal untuk Anda. Misalnya,
- ikat nilai input langsung di eksekusi()
- membuat Anda mengembalikan data dalam format yang diinginkan
Jadi sebenarnya Anda membutuhkan kode dua kali lebih sedikit daripada yang Anda miliki sekarang:
$currency_codes = array("USD", "RUB");
$currency_codes_in = implode(',', array_fill(0, count($currency_codes), '?'));
$query = "SELECT `curr_id` FROM `dictionary_currency` WHERE `curr_code` IN ($currency_codes_in)";
$stmt = $db->prepare($query);
$stmt->execute($currency_codes);
$arr = $stmt->fetchAll(PDO::FETCH_COLUMN);
atau saya lebih suka mengusulkan untuk membuatnya seperti
$query = "SELECT curr_code, curr_id FROM dictionary_currency WHERE `curr_code` IN ($currency_codes_in)";
$stmt = $db->prepare($query);
$stmt->execute($currency_codes);
$arr = $stmt->fetchAll(PDO::FETCH_KEY_PAIR);