【发布时间】:2014-07-31 23:17:56
【问题描述】:
我正在尝试为 PDO 插入的执行部分动态创建一个数组。我的工作代码包括这样的文本:
$stmt->execute(array(
':fname' => $_POST['fname'],
':lname' => $_POST['lname'],
':email' => $_POST['email']
));
我第一次尝试创建数组:
$insert_execute = array();
foreach ($values as $column => $value) {
array_push($insert_execute, ":" . $column . " => " . "'".$value."'");
}
但是当我尝试执行时,我得到一个 PDO 错误:
SQLSTATE[HY093]: Invalid parameter number: parameter was not defined
而且当我打印结果时,还有一个附加参数:
Array
(
[0] => fname => 'Test Name'
[1] => lname => 'Test Last'
[2] => email => 'test@email.com'
)
如何修改array_push来移除数组中的[0]、[1]、[2]等?
【问题讨论】: