And*_*rew 4 zend-framework zend-db-table zend-db
我正在实现我的模型,就像快速入门指南一样.
在我的模型中,我试图实现一个findByToken()方法.当前find()方法接受一个$id参数,但我想通过不同列的值来查找.
//excerpt from the quickstart guide
public function find($id, Default_Model_Guestbook $guestbook)
{
$result = $this->getDbTable()->find($id);
if (0 == count($result)) {
return;
}
$row = $result->current();
$guestbook->setId($row->id)
->setEmail($row->email)
->setComment($row->comment)
->setCreated($row->created);
}
Run Code Online (Sandbox Code Playgroud)
我尝试过这样的事情,但我觉得它不起作用:
$db = $this->getDbTable();
$where = $db->getAdapter()->quoteInto('token = ?', $token);
$result = $db->find($where);
Run Code Online (Sandbox Code Playgroud)
通过指定列的值查找行的正确方法是什么?
$result = $db->fetchAll($where);
Run Code Online (Sandbox Code Playgroud)
或者如果您只想检索一行.
$result = $db->fetchRow($where);
Run Code Online (Sandbox Code Playgroud)
您还可以使用Zend_Db_Select对象,保持适配器进一步抽象:
$db = $this->getDbTable();
$select = $db->select()->where('token = ?', $token);
$result = $db->fetchAll($select);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17716 次 |
| 最近记录: |