MVC中集成medoo数据库框架

这段时间实习的时候,我一直在使用一个php的MVC框架,想着有时间自己也写一个简单的MVC框架,以加深理解。

MVC构架中,M是Model层,功能是从数据库中读取数据库,以及向数据库中写入数据库;V是View层,功能是展示从数据库中读取到的数据,以及收集数据库写入数据库;C是Controller,功能是进行数据处理,因为一般情况下,从数据库中读取的数据是不能直接展示的,从view层得到的数据也不能直接写入数据库,或者说不一定要写入数据库,都是由Controller控制的。

我们可以使用smarty模板来增强Controller和View层的交互,定义Controller继承自smarty模板类,然后所有的控制器继承Controller就可以轻松的完成smarty模板的使用。具体细节可以参考文章《MVC中使用smarty模板》。

Model层的任务是和数据库进行交互,PHP调用数据库的方法一般有PDO和mysqli两种。我们可以使用开源的medoo类,方便的实现数据库的各种操作。

medoo项目网址:http://medoo.lvtao.net/index.php

使用medoo与上文使用smarty模板的方式类似,Model类继承自medoo类,然后所有的Model都继承Model类,这样就可以在所有的Model里面方便的实现数据库的相关操作了。

核心代码:Model.php



/**
 * Created by PhpStorm.
 * User: koastal
 * Date: 2016/5/15
 * Time: 10:55
 */
require_once 'medoo.php';
require_once 'config.php';
class Model extends medoo
{
    private $default_db = array(
        // 必须配置项
        'database_type' => 'mysql',
        'database_name' => 'test',
        'server' => 'localhost',
        'username' => 'root',
        'password' => '',
        'charset' => 'utf8',
    );
    public  function __construct($options=array())
    {
        $options = empty($options)? $this->default_db:$options;
        parent::__construct($options);
    }
}

项目源代码下载

全文完

你可能感兴趣的:(PHP,MySQL)