Zend framework 查询中未使用数据库表达式
有人能告诉我为什么在下面的查询中不使用我的表达式吗 从Zend framework 查询中未使用数据库表达式,zend-framework,zend-db,Zend Framework,Zend Db,有人能告诉我为什么在下面的查询中不使用我的表达式吗 从accountreset中选择accountreset*,其中(reset_id='34')限制1 您的Zend\u Db\u Expr应该进入from()方法,而不是select() 这里的问题是,现在我必须在from子句中添加我想要的所有字段。因为否则它将只返回一个字段。@sanders您可以在字段数组()中添加一个“*”。 public function findByResetId($resetId, $model = null) {
accountreset
中选择accountreset
*,其中(reset_id='34')限制1
您的
Zend\u Db\u Expr
应该进入from()
方法,而不是select()
这里的问题是,现在我必须在from子句中添加我想要的所有字段。因为否则它将只返回一个字段。@sanders您可以在字段数组()中添加一个“*”。
public function findByResetId($resetId, $model = null) {
$result = null;
if (isset($resetId)) {
$select = $this->getDao()->select(
array('expiration' => new Zend_Db_Expr('UNIX_TIMESTAMP(expiration)'))
);
$select->where('reset_id = ?', $resetId);
$row = $this->getDao()->fetchRow($select);
if (null != $row) {
if (!($model instanceof Stage5_Model_PasswordResetter)) {
$model = new Stage5_Model_PasswordResetter();
}
// vul het model object
$model->setResetId($row->reset_id);
$model->setUserId($row->user_id);
$model->setExpiration($row->expiration);
$result = $model;
}
}
return $result;
}
$select = $this->getDao()
->select()
->from(
$this->getDao()->info('name'),
array('expiration' => new Zend_Db_Expr('UNIX_TIMESTAMP(expiration)'))
);