Многократное выполнение подготовленных выражений в 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]);
}
?>
Дан массив с айдишниками и возрастами юзеров:
<?php
$ages = [
1 => 20,
3 => 30,
5 => 40,
];
?>
Напишите код, который в цикле обновит данные юзеров.