PHP数据访问对象模式


  数据访问对象模式描述了如何创建透明访问数据源的对象。


  场景设计


  设计一个BaseDao基类,实现数据库操作基本的一些query,insert,update方法


  在实际使用的过程中,继承BaseDao,就可以直接调用基类的数据库操作方法


  代码:BaseDao 数据库操作基类


  [php] view plaincopyprint?


  <?php


  //数据访问对象模式


  //将数据库访问层脱离出来 作为公用的访问接口,方便用户开放,是php中常用的一种设计模式


  class BaseDao {


  private $db;


  public function __construct($config) {


  $this->db = mysql_connect($config['user'], $config['pass'], $config['host']);


  mysql_select_db($config['database'], $this->db);


  }


  public function query($sql) {


  return mysql_query($sql, $this->db);


  }


  }


  <?php


  //数据访问对象模式


  //将数据库访问层脱离出来 作为公用的访问接口,方便用户开放,是php中常用的一种设计模式


  class BaseDao {


  private $db;


  public function __construct($config) {


  $this->db = mysql_connect($config['user'], $config['pass'], $config['host']);


  mysql_select_db($config['database'], $this->db);


  }


  public function query($sql) {


  return mysql_query($sql, $this->db);


  }


  }


  代码:UserDao 用户数据表的数据操作,继承BaseDao


  [php] view plaincopyprint?


  <?php


  include("UserDao.php");


  class UserDao extends BaseDao {


  public function addUser() {


  $sql = "INSERT INTO user (username) VALUES ('initphp')";


  return $this->query($sql);


  }


  }


  $UserDao = new UserDao;


  $UserDao->addUser();


  广州达内科技是广州高端IT培训机构领军品牌,名师云集,全新TTS5.0课程体系.包括:Java培训,c++培训,Android开发培训,广州PHP培训等面向大学生的高端软件培训课程,学员可申请"先就业后付款"。



(转自 www.phptarena.com)