怎样封装一个自己的mvc框架(六)

 

我们的框架已经逐步趋于完善

接下来我们利用composer加载一些工具,使我们的框架操作性更强 

首先确定你的环境是否安装了composer,

使用composer前需要编写composer文件,让composer知道需要加载哪些工具

{
    "name": "MYMVC PHP",
    "description":"php Framework",
    "type":"Framework",
    "keywords":[
        "PHP","PHP Framework"
    ],
    "require":{
        "php":">=5.3.0",
        "filp/whoops":"*",
        "symfony/var-dumper":"*",
        "catfan/medoo":"*"

    },
    "repositories": {
        "packagist": {
            "type": "composer",
            "url": "https://packagist.phpcomposer.com"
        }
    }
}

 

 

编写完成后命令行模式进入框架根目录

composer install/update

下载并安装工具

当出现vendor文件夹是说明你已经安装成功

然后在开口文件中引入自动加载类

//引入自动加载类
include "vendor/autoload.php";

 

我们引入了三个工具

分别是报错、输出、数据库三个工具

 

下面我们改造之前的代码首先是报错

在入口文件中实例化报错类,调用方法

    $whoops = new  \Whoops\Run;
    $handler = new \Whoops\Handler\PrettyPageHandler();
    $handler->setPageTitle("出现错误了");//设置报错页面的title
    $whoops->pushHandler($handler);
    $whoops->register();

 

输出类我们直接dump()就可以实现

 

最后改造模型类

http://medoo.lvtao.NET/doc.php网站可以查看手册

 

修改数据库配置文件

<?php
return array(
        'database_type' => 'MySQL',
        'database_name' => 'test',
        'server' => 'localhost',
        'username' => 'root',
        'password' => 'root',
        'charset' => 'utf8',
);

 

修改模型类

<?php
namespace core\lib;
use core\lib\config;

class model extends \medoo
{
    public function __construct()
    {
        //获取配置信息
        $database=config::all('database');
        
        parent::__construct($database);
    
    }

 

在默认控制器实例化类,出现

 

model {#8 ▼
  #database_type: "mysql"
  #charset: "utf8"
  #database_name: "test"
  #server: "localhost"
  #username: "root"
  #password: "root"
  #database_file: null
  #socket: null
  #port: null
  #prefix: null
  #option: []
  #logs: []
  #debug_mode: false
  +"pdo": PDO {#9 ▶}
}

说明改造成功,完成了工具的composer加载

 

 

posted @ 2017-08-15 09:38  QuanZhiGuo的博客  阅读(252)  评论(0编辑  收藏  举报