日期:2014-05-17  浏览次数:20577 次

php框架开发四(DAO层)

网站开发不可避免地要对一些数据进行储存,但是存储这些数据各种语言的方式基本上都是:先打开连接,然后执行SQL语句,获取结结果,关闭连接。

那么PHP在操作数据库的时候有哪些方法呢?

<?php
$connect = mysql_connect($host,$user,$pass);
mysql_select_db($dbname);
$result = mysql_query($query);
while($row = (mysql_fetch_array($result))){
	print_r($row);
}

用以上操作可以来操作数据库。对于在HTML嵌入PHP脚本的行业,这已经足够了,但是当我们要进行大量的增删改查时,必须要把多次的上面的脚本进行复用。那么就会出现这样的模式

DAO层http://blog.csdn.net/tomyjohn/article/details/7675770

我们暂且把上面的模式就做DAO层,但是真正的意义在于我们这个MVC框架,恰好可以用这个方式来操作。下面我们新建一个controller

<?php
class index{
	
	public function demo(){
		$art = new article();
		$art->title = '标题';
		$art->content = '内容';
		$art->save();
		echo $art->id;
		view::show('index.htm');
	}
}


在数据库里新建一张表,表名为“si_article”,

DROP TABLE IF EXISTS `si_article`;
CREATE TABLE `si_article` (
  `id` int(8) NOT NULL AUTO_INCREMENT,
  `title` varchar(255) DEFAULT NULL,
  `content` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=gbk;


 

在“modules”文件夹内新建一个“article.php”

<?php
class article extends dao{
	protected $table = __CLASS__;
}

当我们执行上面的controller时,便可以看到刚插入的数据的ID。

这样我们可以很简单地实现一个在线留言的功能。

这个框架讲到现在,差不多所有的MVC都已经描述了一遍,你可以用它来开发,当然它是一个完整的但并不丰富的MVC。我们要考虑的事情还有很多。譬如分页,缓存,安全等等。但这并不影响我对这个轮子的热爱。