Večkratno izvajanje pripravljenih izjav v PDO v PHP
Pripravljeno izjavo lahko izvedemo za poizvedbo v bazi podatkov večkrat. To je nekoliko bolj koristno z vidika virov, kot če bi jo vsakič znova pripravili.
Za primer recimo, da moramo narediti poizvedbe za posodobitev plač uporabnikov v tabeli.
Recimo, da že imamo asociativno polje,
v katerem bo kot ključ naveden
id uporabnika, kot vrednost pa
njegova plača:
<?php
$salaries = [
1 => 200,
3 => 500,
5 => 700,
];
?>
Pripravimo poizvedbo enkrat:
<?php
$res = $pdo->prepare('UPDATE users SET salary=? WHERE id=?');
?>
In zdaj v zanki iterirajmo po našem polju in izvajajmo našo pripravljeno poizvedbo v vsaki iteraciji z različnimi podatki za nadomestne označevalce:
<?php
foreach ($salaries as $id => $salary) {
$res->execute([$salary, $id]);
}
?>
Podano je polje z ID-ji in starostmi uporabnikov:
<?php
$ages = [
1 => 20,
3 => 30,
5 => 40,
];
?>
Napišite kodo, ki bo v zanki posodobila podatke uporabnikov.