欢迎光临
我们一直在努力

PHP日志类与驱动类

 

框架里面常用到类调用驱动类,如DB类调用MySQL类,MySQLi类,MSSQL类等。

今天记录一个简单点的LOG类(日志)调用File类(文件模式),Mysql类(mysql存储)

log.php

<?php
namespace mbphp\lib\drive\log;
use mbphp\lib\conf;
class file{

    public $path;//日志存储路径
    public function __construct()
    {
        $option = conf::get('option','log');
        $this->path = $option['path'];
    }

    /**
     * 写日志
     * @param $msg
     * @param string $file
     */
    public function log($msg,$file='log'){
        //检测目录是否存在
        if(!is_dir($this->path)){
            //新建目录
            mkdir($this->path,'0777',true);
        }

        //写入日志
        $data = '['.date('Y-m-d H:i:s').']  '.json_encode($msg).PHP_EOL;
        $path = $this->path.'/'.$file.'_'.date('Ymd').'.log';
        $rs = file_put_contents($path,$data,FILE_APPEND);
        return $rs;
    }
}

log/file.php

<?php
namespace mbphp\lib\drive\log;
use mbphp\lib\conf;
class file{

    public $path;//日志存储路径
    public function __construct()
    {
        $option = conf::get('option','log');
        $this->path = $option['path'];
    }

    /**
     * 写日志
     * @param $msg
     * @param string $file
     */
    public function log($msg,$file='log'){
        //检测目录是否存在
        if(!is_dir($this->path)){
            //新建目录
            mkdir($this->path,'0777',true);
        }

        //写入日志
        $data = '['.date('Y-m-d H:i:s').']  '.json_encode($msg).PHP_EOL;
        $path = $this->path.'/'.$file.'_'.date('Ymd').'.log';
        $rs = file_put_contents($path,$data,FILE_APPEND);
        return $rs;
    }
}

注:代码是自己写的框架中copy出来的,设计到其他类与配置文件,参考思路。不要copy不改配置就运行,运行不起的(*^__^*) 嘻嘻

分享到:更多 ()