Zend_Db查询和行计数,而不是事先撤回所有内容

时间:2010-10-13 20:39:14

标签: zend-framework zend-db

我创建了我的选择:

$select = $zdb->select()
              ->from(array("b" => "blogs"),
                     array("id", "active", "updated_by", "title", "synopsis", "create_date", "body"))
              ->join(array("u" => "users"),
                     'b.updated_by = u.id',
                     array("first_name", "last_name"))
              ->where("u.blogger = ?", 1)
              ->where("b.publish_date > ?", '2020-01-01')
              ->where("b.active = ?", 1)
              ->group("b.id")
              ->order("b.publish_date DESC")
              ->limit(5);

我希望一次拉回数据:

$stmt = $db->query($select);

while ($asset = $stmt->fetch()) {
    // do stuff
}

如何检查以确保有行,而不返回整个结果集?

1 个答案:

答案 0 :(得分:1)

使用您已有的选择,类似的东西应该可以帮助您解析每个条目

$rows = $zdb->fetchAll($select);

foreach($rows as $row){
    ...
}

要获取值,您只需要执行$ row ['fieldName'],其中fieldName是数据库中字段的名称