Пример вставки нескольких строк с позиционными плейсхолдерами
$myArray = array(
3 => 'test3',
4 => 'test4',
5 => 'test5',
);
$statement = $pdo->prepare("INSERT INTO table1 (id, field1) VALUES (?, ?)");
foreach ($myArray as $id => $field1) // PS не могли бы объяснить этот цикл?
{
$statement->execute([$id,$field1]);
}
/*
В результате в БД будут вставлены 3 строки:
id=3, field1=test3
id=4, field1=test4
id=5, field1=test5
*/
Пример вставки одной строки с именованными плейсхолдерами
// Ключи в массиве должны совпадать с именами плейсхолдеров.
$myArray = array('id' => 3, 'field1' => 'test3');
$statement = $pdo->prepare("INSERT INTO table1 (id, field1) VALUES (:id, :field1)");
$statement->execute($myArray);
// В результате в БД будет вставлена строка id=3, field1=test3.
А как вставить несколько строк (подобно позиционным)?
PS
И не могли бы вы объяснить цикл foreach ($myArray as $id => $field1) ?
Что значит as и причем тут стрелка (я понимаю что тут что то связанное с элементами массива, но что конкретно)
В том же c# foreach (int i in numbers) - всё ясно. Есть тип данных (переменная в цикле) массива i и есть сам массив
Для каждого целочисленного i (элемента) в массиве делай...и цикл.