创建基础类文件

原创 2018-12-26 10:48:25 187
摘要:<?php /**  * 基础类(调试模式、类的自动加载、启动框架/路由解析请求分发)  */ namespace pig; class Base{     //当前配置信息     protected $config = [];
<?php
/**
 * 基础类(调试模式、类的自动加载、启动框架/路由解析请求分发)
 */

namespace pig;

class Base{
    //当前配置信息
    protected $config = [];
    //路由信息
    protected $queryStr = '';

    public function __construct($config,$queryStr = '')
    {
        $this->config = $config;
        $this->queryStr = $queryStr;
    }

    //设置调试模式
    public function setDebug(){
        if($this->config['app']['debug']){
            //开启调试信息
            error_reporting(E_ALL);//返回错误消息
            ini_set('display_errors','On');//设置php配置文件:开启调试错误
        }else{
            //关闭调试信息
            error_reporting(E_ALL);//返回错误消息
            ini_set('display_errors','Off');//设置php配置文件:开启调试错误
            ini_set('log_errors','On');//设置php配置文件:开启错误日志
        }
    }

    //自动加载方法
    public function loader($class){
        $path = ROOT_PATH . str_replace('\\','/',$class) . '.php';
        //如果没有找到文件,就返回默认首页
        if(!file_exists($path)){
            header('Location:/');
        }
        require $path;
    }

    //启动框架(路由请求分发)
    public function run(){
        //设置调试模式
        $this->setDebug();
        //自动加载
        spl_autoload_register([$this,'loader']);
        //请求分发
        echo (new Route($this->config['route']))->parse($this->queryStr)->dispacth();
    }
}


发布手记

热门词条