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。我们要考虑的事情还有很多。譬如分页,缓存,安全等等。但这并不影响我对这个轮子的热爱。