Zend Framework框架教程之Zend_Db_Table_Rowset用法實例分析
本文實例講述了Zend Framework框架Zend_Db_Table_Rowset用法。分享給大家供大家參考,具體如下:
1. 簡介
Zend_Db_Table_Rowset是 Zend_Db_Table_Row對象集合的迭代器.通常來說,你不可以自己實例化Zend_Db_Table_Rowset, 而是通過調(diào)用Zend_Db_Table::find()方法或者fetchAll()方法將Zend_Db_Table_Rowset作為 結果數(shù)據(jù)返回過來.接下來就可以遍歷Zend_Db_Table_Row對象集合并進行修改.
2. 取回結果集
首先,需要實例化一個Zend_Db_Table類.
<?php
// 設置一個 adapter
require_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);
// 連接數(shù)據(jù)庫表
class RoundTable extends Zend_Db_Table {}
$table = new RoundTable();
?>
接下來,可以使用Zend_Db_Table::find()方法和多個鍵值,或者使用Zend_Db_Table::fetchAll()方法對數(shù)據(jù)庫進行查詢,
返回的結果是一個Zend_Db_Table_Rowset對象,可以通過該對象遍歷結果集中的每一個Zend_Db_Table_Row對象.
<?php // 從表中取回多條記錄 $rowset = $table->fetchAll(); // // $rowset現(xiàn)在是一個Zend_Db_Table_Rowset對象,該對象中每條記錄就是一個Zend_Db_Table_Row對象 // ?>
3. 遍歷結果集
Zend_Db_Table_Rowset實現(xiàn)了簡單程序設計語言的迭代器接口,也就是說,可以對Zend_Db_Table_Rowset 對象進行循環(huán)處理,就像使用foreach()函數(shù)處理數(shù)組一樣.使用這種方法取回的每一個值都是一個對應表 中數(shù)據(jù)的Zend_Db_Table_Row對象,你可以查看,修改和保存該對象的屬性(即表中的字段值.)
<?php
// 連接到數(shù)據(jù)庫中的表
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";
// 更新我們顯示改行的次數(shù)
// (對應表中的"times_displayed"字段)
$row->timesDisplayed ++;
// 保存新記錄.
$row->save();
}
?>
更多關于zend相關內(nèi)容感興趣的讀者可查看本站專題:《Zend FrameWork框架入門教程》、《php優(yōu)秀開發(fā)框架總結》、《Yii框架入門及常用技巧總結》、《ThinkPHP入門教程》、《php面向?qū)ο蟪绦蛟O計入門教程》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家基于Zend Framework框架的PHP程序設計有所幫助。
- Zend Framework教程之Zend_Db_Table表關聯(lián)實例詳解
- Zend Framework教程之Zend_Db_Table_Row用法實例分析
- Zend Framework教程之Zend_Db_Table用法詳解
- ZendFramework框架實現(xiàn)連接兩個或多個數(shù)據(jù)庫的方法
- Zend Framework教程之連接數(shù)據(jù)庫并執(zhí)行增刪查的方法(附demo源碼下載)
- Zend Framework連接Mysql數(shù)據(jù)庫實例分析
- 解析如何使用Zend Framework 連接數(shù)據(jù)庫
- zend framework配置操作數(shù)據(jù)庫實例分析
- Zend Framework入門教程之Zend_Db數(shù)據(jù)庫操作詳解
相關文章
PHP中設置一個嚴格30分鐘過期Session面試題的4種答案
這篇文章主要介紹了PHP中設置一個嚴格30分鐘過期Session面試題的4種答案,需要的朋友可以參考下2014-07-07
php利用云片網(wǎng)實現(xiàn)短信驗證碼功能的示例代碼
這篇文章主要介紹了php利用云片網(wǎng)實現(xiàn)短信驗證碼功能的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-11-11
PHP實現(xiàn)把文本中的URL轉(zhuǎn)換為鏈接的auolink()函數(shù)分享
這篇文章主要介紹了PHP實現(xiàn)把文本中的URL轉(zhuǎn)換為鏈接的auolink()函數(shù)分享,非常簡潔易用的一個函數(shù),原作者還有另外一些很Nice的PHP函數(shù),需要的朋友可以參考下2014-07-07
Symfony2框架創(chuàng)建項目與模板設置實例詳解
這篇文章主要介紹了Symfony2框架創(chuàng)建項目與模板設置的方法,結合實例形式詳細分析了Symfony2框架的具體步驟與詳細實現(xiàn)代碼,需要的朋友可以參考下2016-03-03

