Maison >php教程 >PHP开发 >Tutoriel Zend Framework - Analyse d'un exemple d'utilisation de Zend_Db_Table_Rowset

Tutoriel Zend Framework - Analyse d'un exemple d'utilisation de Zend_Db_Table_Rowset

高洛峰
高洛峰original
2017-01-05 09:44:271132parcourir

L'exemple de cet article décrit l'utilisation de Zend Framework Zend_Db_Table_Rowset. Partagez-le avec tout le monde pour référence, comme suit :

1. Introduction

Zend_Db_Table_Rowset est un itérateur de la collection d'objets Zend_Db_Table_Row De manière générale, vous ne pouvez pas instancier Zend_Db_Table_Rowset vous-même, mais en appelant Zend_Db_Table. ::find() ou la méthode fetchAll() renvoie Zend_Db_Table_Rowset comme données de résultat. Ensuite, vous pouvez parcourir la collection d'objets Zend_Db_Table_Row et la modifier

2.

Tout d'abord, vous devez instancier une classe Zend_Db_Table

<?php
// 设置一个 adapter
require_once &#39;Zend/Db.php&#39;;
$params = array (
  &#39;host&#39;   => &#39;127.0.0.1&#39;,
  &#39;username&#39; => &#39;malory&#39;,
  &#39;password&#39; => &#39;******&#39;,
  &#39;dbname&#39;  => &#39;camelot&#39;
);
$db = Zend_Db::factory(&#39;PDO_MYSQL&#39;, $params);
// 为所有的Zend_Db_Table对象设置默认
require_once &#39;Zend/Db/Table.php&#39;;
Zend_Db_Table::setDefaultAdapter($db);
// 连接数据库表
class RoundTable extends Zend_Db_Table {}
$table = new RoundTable();
?>
Ensuite, vous pouvez utiliser la méthode Zend_Db_Table::find() et plusieurs valeurs clés, ou utiliser la méthode Zend_Db_Table::fetchAll(). pour récupérer la requête de base de données,

Le résultat renvoyé est un objet Zend_Db_Table_Rowset, à travers lequel chaque objet Zend_Db_Table_Row de l'ensemble de résultats peut être parcouru

<?php
// 从表中取回多条记录
$rowset = $table->fetchAll();
//
// $rowset现在是一个Zend_Db_Table_Rowset对象,该对象中每条记录就是一个Zend_Db_Table_Row对象
//
?>
Parcours de l'ensemble de résultats

Zend_Db_Table_Rowset est implémenté L'interface itérateur d'un langage de programmation simple, c'est-à-dire que l'objet Zend_Db_Table_Rowset peut être traité en boucle, tout comme l'utilisation de la fonction foreach() pour traiter un tableau. Chaque valeur récupérée à l'aide de cette méthode est une correspondance. données dans le tableau. Objet Zend_Db_Table_Row, vous pouvez afficher, modifier et enregistrer les propriétés de cet objet (c'est-à-dire les valeurs des champs dans le tableau.)

J'espère que cet article vous sera utile. à la programmation PHP de chacun basée sur le framework Zend Framework.
<?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) . "&#39;s "
    . "favorite color is " . htmlspecialchars($row->favoriteColor)
    . ".</p>/n";
  // 更新我们显示改行的次数
  // (对应表中的"times_displayed"字段)
  $row->timesDisplayed ++;
  // 保存新记录.
  $row->save();
}
?>

Pour plus de tutoriels Zend Framework et d'articles sur l'analyse d'exemples d'utilisation de Zend_Db_Table_Rowset, veuillez faire attention au site Web PHP chinois !

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn