Eksekusi Berulang Ekspresi Tersiapkan di PDO PHP
Kita dapat mengeksekusi ekspresi tersiapkan untuk kueri ke database beberapa kali. Ini sedikit lebih menguntungkan dari segi sumber daya dibandingkan menyiapkannya setiap kali dari awal.
Sebagai contoh, misalkan kita perlu melakukan kueri pembaruan gaji pengguna dalam tabel.
Misalkan kita sudah memiliki array asosiatif,
di mana dalam bentuk kunci akan ditunjukkan
id pengguna, dan dalam bentuk nilai -
gajinya:
<?php
$salaries = [
1 => 200,
3 => 500,
5 => 700,
];
?>
Siapkan kueri sekali saja:
<?php
$res = $pdo->prepare('UPDATE users SET salary=? WHERE id=?');
?>
Sekarang dalam loop, kita akan mengulangi array kita dan mengeksekusi kueri tersiapkan kita di setiap iterasi dengan data yang berbeda untuk placeholder:
<?php
foreach ($salaries as $id => $salary) {
$res->execute([$salary, $id]);
}
?>
Diberikan array dengan id dan usia pengguna:
<?php
$ages = [
1 => 20,
3 => 30,
5 => 40,
];
?>
Tuliskan kode yang dalam loop akan memperbarui data pengguna.