我试图用Zend_Db_Adapter更新查询,但是当我做查询的回声时,我想要更新的值仍然是“?”。我入住的是价值$ foo的,我总有1个或0 我的代码:?而不是zend更新的价值
$this->_db->beginTransaction();
try {
foreach($a_result as $k => $j){
$foo = ($j['val1'] >= $j['val2']) ? 1 : 0 ;
$a_data = array('bar' => $foo);
$where['id = ?'] = $k;
$update = $this->_db->update($this->_name, $a_data, $where);
}
$this->_db->commit();
} catch (Exception $e) {
$this->_db->rollBack();
echo $e->getMessage();
}
我所有的querys看起来是这样的:
- UPDATE
foo
SETbar
=? WHERE(id = 39) - UPDATE
foo
SETbar
=? WHERE(ID = 40) - [...]
检查它是否将$ foo的值视为布尔值,可能是您需要将$ foo的值转换为 – almaruf 2014-11-05 10:32:34
将其考虑为$ foo作为int – Snabow 2014-11-05 10:37:57