从零开始打造自己的PHP框架的视频资料

黄舟
发布: 2018-05-31 10:45:18
原创
3582人浏览过

你觉得thinkphp框架很不错?laravel很优雅?yii很稳定?ci很高效?哼哼,其实你自己开发的才是最最好用最最适合你的框架!

X~MW[I}P)BD~4BJU584Y`2E.png

课程播放地址://m.sbmmt.com/course/276.html

该老师讲课风格:

讲课亲切自然,朴实无华,没有矫揉造作,也不刻意渲染,而是娓娓而谈,细细道来,师生之间在一种平等、协作、和谐的气氛下,进行默默的情感交流,将对知识的渴求和探索融于简朴、真实的教学情景之中,学生在静静的思考、默默的首肯中获得知识

立即学习PHP免费学习笔记(深入)”;

本视频中较为难点是配置加载类(1)了:

一、配置加载类

要想做配置加载类我们要先了解为什么要用到配配置加载类

当我们需要改变某一项配置的时候我们不需要在功能中找到所有的配置进行修改,而是直接在一个单独的配置文件中修改,这样可以更好的优化我们的框架,用起来才会更舒服。

比如说我们的数据库配置

我们可以做一个单独的数据库配置文件放到config文件中

<?php   
  
    return array(  
        'DSN' => 'mysql:host=localhost;dbname=test',  
        'USERNAME' => 'root',  
        'PASSWD' => 'root'  
        )  
 ?>
登录后复制

接下来让我们加载配置文件

public function __construct(){  
    $database = conf::all('database');  
    try {  
        parent::__construct($database['DSN'],$database['USERNAME'],$database['PASSWD']);  
    } catch (PDOException $e) {  
        p($e->getMessage());  
    }  
}
登录后复制

这样的话,我们只需要修改配置文件就可以修改我们的数据库连接岂不是很方便

二、日志类

日志类是所有框架中都必不可少的功能,日志类可能是存在数据库中,也可以存在存在文件中。

在config文件中创建log.PHP配置文件,里面放上文件的存储方式和存储路径

<?php   
  
    return array(  
        'DRIVE' => 'file',  
        'OPTION' => array(  
            'PATH' => LHY.'/log/'  
            )  
        );  
 ?>
登录后复制

在lib文件中创建一个log文件,再从log文件中创建一个file.php文件,在file.php文件中实现将日志存入文件

<?php   
namespace corelibdrivelog;  
  
use corelibconf;  
class file  
{  
    public $path;#日志存储路径  
    public function __construct(){  
        $conf = conf::get('OPTION','log');  
        $this->path = $conf['PATH'];  
    }  
    public function log($message,$file){  
        $path = $this->path;  
        // echo $this->path.date('Y-m-d');die;  
        if(!is_dir($this->path.date('Y-m-d'))){  
            mkdir($this->path.date('Y-m-d'),0777,true);  
        }  
        $message = date('Y-m-d H:i:s').$message;  
        return file_put_contents($this->path.date('Y-m-d').'/'.$file.'.php',json_encode($message).PHP_EOL,FILE_APPEND);  
    }  
}  
  
 ?>
登录后复制

在lib文件中创建log.php类文件

<?php   
namespace corelib;  
use corelibconf;  
  
class log  
{  
    static $class;  
    /** 
     * 1.确定日志存储方式 
     * 
     * 2.写日志 
     */  
    static public function init(){  
        //确定存储方式  
        $drive = conf::get('DRIVE','log');  
        $class = 'corelibdrivelog\'.$drive;  
        self::$class =  new $class;  
    }  
    static public function log($message,$file){  
        //corelibdriveloglog;  
        self::$class->log($message,$file);  
    }  
}  
  
 ?>
登录后复制

以上就是从零开始打造自己的PHP框架的视频资料的详细内容,更多请关注php中文网其它相关文章!

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 //m.sbmmt.com/ All Rights Reserved | php.cn | 湘ICP备2023035733号