1

嗨,在基于 zend 框架的应用程序中,从数据库中获取数据的最佳方法是什么?映射器和 DbTable 文件之间是否有任何区别,如果 hv 有一个简单的示例来演示,那就太好了。谢谢

4

1 回答 1

2

在使用 mapper 之前,您应该首先编写一个库,这将更容易让您调用和定义新的。以下是使用库定义基于映射器的数据库表的好方法之一。

在模型文件夹中,您需要有 DbTable 和映射器文件夹。在 DbTable 中创建 User.php 并在 mapper 中创建一个 UserMapper.php 文件。同样在模型文件夹本身内,您必须创建 User.php 文件。下面是示例代码

数据库表>用户.php

<?php
 class Application_Model_DbTable_Users extends Zend_Db_Table_Abstract
 {
 protected $_name = 'users';
 }
 ?>

映射器>用户映射器.php

<?php
 class Application_Model_Mapper_UserMapper extends Zc_Model_BaseMapper
 {
  public function __construct()
  {
    $this->setDbTable('Application_Model_DbTable_Users');
  }

  public function find($userid Application_Model_User $user)
  {
  // sql will go here
  }

模型>用户.php

class Application_Model_User extends Zc_Model_Base
{
  protected $_userId;
  protected $_userName;

  public function setUserId($userId)
  {
    $this->_userId = $userId;
    return $this;
  }
  publc function getUserId()
  {
    return $this->_userId;
  }

  public function toArray()
  {
    $data = array(
      'user_id' => getUserId();
     )
    return $data
  }

希望对你有帮助 ;-)

于 2012-07-25T02:45:40.910 回答