Sagatavoto izteiksmju atkārtota izpilde PDO PHP
Mēs varam izpildīt sagatavoto izteiksmi vaicājumam pret datu bāzi vairākas reizes. Tas ir nedaudz izdevīgāk resursu ziņā, nekā to katru reizi sagatavot no jauna.
Piemēram, pieņemsim, ka mums ir jāveic vaicājumi, lai atjauninātu lietotāju algas tabulā.
Pieņemsim, ka mums jau ir asociatīvs masīvs,
kurā atslēgā norādīts
id lietotāja, bet vērtībā -
viņa alga:
<?php
$salaries = [
1 => 200,
3 => 500,
5 => 700,
];
?>
Sagatavosim vaicājumu vienu reizi:
<?php
$res = $pdo->prepare('UPDATE users SET salary=? WHERE id=?');
?>
Un tagad cilpā izskatīsim mūsu masīvu un izpildīsim mūsu sagatavoto vaicājumu katrā iterācijā ar dažādiem datiem vietturiem:
<?php
foreach ($salaries as $id => $salary) {
$res->execute([$salary, $id]);
}
?>
Dots masīvs ar lietotāju ID un vecumiem:
<?php
$ages = [
1 => 20,
3 => 30,
5 => 40,
];
?>
Uzrakstiet kodu, kas cilpā atjauninās lietotāju datus.