PHP中AR和DAO有什么区别?

帖子列表 发布于 2013/04/07 10:52
阅读 2K+
收藏 4
PHP

我的理解不知道对不对:(参考http://www.song100e.com/ar-in-yii-dao/

Active Record(AR)是一个对象-关系映射(ORM)技术。每个AR 类代表一张数据表(或视图),数据表(或视图)的字段在 AR 类中体现为类的属性,一个AR 实例则表示表中的一行。常见的CRUD 操作作为 AR 的方法实现。比如:


$criteria->addCondition("id=1");
$criteria->select ='id,parentid,name';
$criteria->limit = 10;
...
Data access object(DAO,数据访问对象),比如可以建立在PHP的数据对象(PDO)扩展上,使得用单一的统一接口可以访问不同的数据库管理系统(DBMS)。比如:


public function getUsernames ()
{
  $sqlStatement=' SELECT `username` FROM `testdrive`.`tbl_user` ';
  $this->command =$this->connection->createCommand($sqlStatement);
  return$this->command->queryAll();
}

public function addUser ()
{
  $sqlStatement=" INSERT INTO `tbl_user` (`username`, `password`, `email`) VALUES ('test', 'test', 'test@test.com') ";
  $this->command =$this->connection->createCommand($sqlStatement);
  return$this->command->execute();
}


加载中
0
justjavac
justjavac
DAO 比 AR 高一层。AR 的本质是一种 ORM。
0
徐建兴
徐建兴

请问这种格式的代码是如何美化的啊!为什么我写的代码感觉特别的乱!

帖子列表
帖子列表
编辑时有代码编辑器, 选对应的语言
返回顶部
顶部