首页 > 编程 > PHP > 正文

关于Zend Framework中Zend_Db_Table_Rowset的用法

2020-03-22 17:45:58
字体:
来源:转载
供稿:网友
这篇文章主要介绍了Zend Framework框架教程之Zend_Db_Table_Rowset用法,结合实例形式分析了Zend_Db_Table_Rowset操作结果集的相关技巧,需要的朋友可以参考下

本文实例讲述了Zend Framework框架Zend_Db_Table_Rowset用法。分享给大家供大家参考,具体如下:

1. 简介

Zend_Db_Table_Rowset是 Zend_Db_Table_Row对象集合的迭代器.通常来说,你不可以自己实例化Zend_Db_Table_Rowset, 而是通过调用Zend_Db_Table::find()方法或者fetchAll()方法将Zend_Db_Table_Rowset作为 结果数据返回过来.接下来就可以遍历Zend_Db_Table_Row对象集合并进行修改.

2. 取回结果集

首先,需要实例化一个Zend_Db_Table类.

 ?php// 设置一个 adapterrequire_once Zend/Db.php $params = array ( host = 127.0.0.1 , username = malory , password = ****** , dbname = camelot $db = Zend_Db::factory( PDO_MYSQL , $params);// 为所有的Zend_Db_Table对象设置默认require_once Zend/Db/Table.php Zend_Db_Table::setDefaultAdapter($db);// 连接数据库html' target='_blank'>class RoundTable extends Zend_Db_Table {}$table = new RoundTable();? 

接下来,可以使用Zend_Db_Table::find()方法和多个键值,或者使用Zend_Db_Table::fetchAll()方法对数据库进行查询,
返回的结果是一个Zend_Db_Table_Rowset对象,可以通过该对象遍历结果集中的每一个Zend_Db_Table_Row对象.

 ?php// 从表中取回多条记录$rowset = $table- fetchAll();// $rowset现在是一个Zend_Db_Table_Rowset对象,该对象中每条记录就是一个Zend_Db_Table_Row对象? 

3. 遍历结果集

Zend_Db_Table_Rowset实现了简单程序设计语言的迭代器接口,也就是说,可以对Zend_Db_Table_Rowset 对象进行循环处理,就像使用foreach()函数处理数组一样.使用这种方法取回的每一个值都是一个对应表 中数据的Zend_Db_Table_Row对象,你可以查看,修改和保存该对象的属性(即表中的字段值.)

 ?php// 连接到数据库中的表class RoundTable extends Zend_Db_Table {}$table = new RoundTable();// 从表中取回多条记录$rowset = $table- fetchAll();// 显示所有的记录foreach ($rowset as $row) { // $row 是一个 Zend_Db_Table_Row 对象 echo p . htmlspecialchars($row- nobleTitle) .  . htmlspecialchars($row- firstName) . s  . favorite color is . htmlspecialchars($row- favoriteColor) . . /p /n  // 更新我们显示改行的次数 // (对应表中的 times_displayed 字段) $row- timesDisplayed ++; // 保存新记录. $row- save();? 

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP !

相关推荐:

关于ZendFramework2连接数据库的操作

关于Zend Framework自定义Helper类的相关知识

以上就是关于Zend Framework中Zend_Db_Table_Rowset的用法的详细内容,PHP教程

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表