0

目前我正在使用 Zend_DB_Select,我想将行作为对象返回,以便我可以使用 save()、delete() 等方法

功能包括:

    $table = self::instance();
    $select = $table->getAdapter()->select();
    $select->from('table1');
    if($where != '')
    {
        $select->where($where);
    }
    $select->limit($count);
    $select->order('id DESC');

    $rs = $select->query()->fetchAll();

所以现在我正在传递一个数组而不是对象类型。

4

2 回答 2

3

如果您想将结果行作为对象进行操作(对它们调用 save()、delete() 等等),您需要使用 Zend_Db_Table_* 而不仅仅是 Zend_Db_* 来处理您的请求。

这样,您的结果集将是 Zend_Db_Table_Row 对象(而不是数组或 stdClass 对象),并且这些对象具有诸如 save() 和 delete() 之类的方法,您可以调用它们来操作和更新代码中的各个行。

从这里开始阅读:

http://framework.zend.com/manual/en/zend.db.table.html

于 2011-01-06T22:29:17.480 回答
3

尝试这个:

$rs = $select->query()->fetchAll(Zend_Db::FETCH_OBJ);

使用Zend_Db::FETCH_OBJ,zend 将返回对象。这都是关于获取模式的。

于 2012-08-20T17:53:22.533 回答