В настоящее время у меня есть массив, который содержит значения из формы для вставки в базу данных с использованием PDO.
Некоторые значения являются необязательными полями и поэтому иногда будут заполняться, а другие - NULL
.
Таблица, в которую я вставляю, имеет длину примерно 50 строк, и я использую следующее:
$sth = Database::get()->prepare("INSERT INTO $this->_insertTbl
(field1, field2, field3)
VALUES
(:field1, :field2, :field3)");
$sth->execute($dataArr);
$dataArr
иногда может содержать нулевые значения, такие как:
Array
(
[field1] => 44
[field2] => NULL
[field3] => Jammin
}
А иногда нет:
Array
(
[field1] => 44
[field2] => Harry
[field3] => William
}
Это нормально работает как с полностью заполненными переменными, так и с пустыми строками, но, похоже, не работает с некоторыми NULL
значениями.
ОбычноНасколько я понимаю, вы бы использовали bindValue
вместо bindParam
, однако, поскольку я выполняю оператор с массивом, есть ли способ обойти это, или мне нужно перечислить каждый из них по отдельности?