Забравете за bindParam
, просто използвайте execute
и му предайте стойностите на $array
:
$STH->execute($array);
Като алтернатива можете да задраскате напълно посочените параметри, за да опростите малко кода си:
$columnString = implode(',', array_keys($array));
$valueString = implode(',', array_fill(0, count($array), '?'));
$STH = $core->dbh->prepare("INSERT INTO table ({$columnString}) VALUES ({$valueString})");
$STH->execute(array_values($array));