Zend framework 更新Zend中的多行
我正在尝试找出如何在zend framework中的一个update()中更新多行 我有一个名为IDs的ID数组,我想更新这些ID所有行的一个字段 我尝试创建一个where条件,如下所示:Zend framework 更新Zend中的多行,zend-framework,zend-db,Zend Framework,Zend Db,我正在尝试找出如何在zend framework中的一个update()中更新多行 我有一个名为IDs的ID数组,我想更新这些ID所有行的一个字段 我尝试创建一个where条件,如下所示: $where = Bootstrap::$db->quoteInto('id_task IN (?)', $ids); 然后调用update方法: $this->getDbTable()->update(array("deleted" => 1), $where); 但我有一个语法
$where = Bootstrap::$db->quoteInto('id_task IN (?)', $ids);
然后调用update方法:
$this->getDbTable()->update(array("deleted" => 1), $where);
但我有一个语法错误或访问冲突错误,我的查询在调试输出中如下所示:
array(2) {
[0]=>
&string(54) "UPDATE `tasks` SET `deleted` = ? WHERE (id_task IN ())"
[1]=>
&array(1) {
[0]=>
int(1)
}
}
有人知道如何在更新的where条件下传递数组吗?可能是这样:
$where = Bootstrap::$db->quoteInto('id_task IN (?)', implode( ',', $ids ) );
假设您的
id
是整数并且已经过验证。就在$where=Bootstrap::$db…
之前,变量转储($id)是什么代码>显示?中的操作员是否会在更新中工作?也许可以将其作为Zend\u Db\u表达式来尝试,而不是quoteInto()