Повторливо извршување на подготвени изрази во PDO во PHP
Можеме да извршиме подготвен израз за барање до базата на податоци неколку пати. Ова е малку поповолно од аспект на ресурси, отколку да се подготвува секој пат од ново.
Да претпоставиме за пример дека треба да направиме барања за ажурирање на платите на корисниците во табелата.
Да претпоставиме дека веќе имаме асоцијативна низа,
во која како клуч ќе биде наведен
id на корисникот, а како вредност -
неговата плата:
<?php
$salaries = [
1 => 200,
3 => 500,
5 => 700,
];
?>
Да го подготвиме барањето еднаш:
<?php
$res = $pdo->prepare('UPDATE users SET salary=? WHERE id=?');
?>
А сега во циклус ќе ја прелистуваме нашата низа и ќе го извршуваме нашето подготвено барање во секоја итерација со различни податоци за плејсхолдерите:
<?php
foreach ($salaries as $id => $salary) {
$res->execute([$salary, $id]);
}
?>
Дадена е низа со id-ња и возрасти на корисници:
<?php
$ages = [
1 => 20,
3 => 30,
5 => 40,
];
?>
Напишете код, кој во циклус ќе ги ажурира податоците на корисниците.