这一节 我们的框架需要完善一项功能,
那就是日志功能,通过查看日志我们可以查看之前操作的控制器!
首先我们需要创建一个日志类
需要有一下几个步骤
* 1.确定日志存储方式 * * 2.写日志
<?PHP namespace core\lib;use core\lib\config;class log { static $class; /** * 1.确定日志存储方式 * * 2.写日志 */ static public function init() { //确定存储方式 $drive = config::get('DRIVE','log'); //存储方式路径 $classpath= '\core\lib\drive\log\\'.$drive; self::$class=new $classpath; }
//调用存储驱动存储日志文件 static public function log($message,$file='log') { self::$class->log($message,$file); }}
然后在我们的配置文件中,编写日志的配置项目
<?php return array( 'DRIVE'=>'file', 'OPTION'=>array( 'PATH'=>ROOT."/log//" ));
在这里我们需要创建一个日志驱动文件
日志存储方式可以使存储在文件中,也可以存在数据库等里面
所以至少创建两种驱动方式
暂时先不考虑数据库默认文件存储
<?php namespace core\lib\drive\log;use core\lib\config;//文件系统class file{ public $path ; //初始化方法 public function __construct() { $path=config::get('OPTION','log'); $this->path=$path['PATH']; } //创建日志文件 public function log($message,$file='log') { /** * 1.日志存储位置是否存在 * * 2.写日志 */ if (!file_exists($this->path.date('YmdH'))) { mkdir($this->path.date('YmdH')); } //换行符PHP_EOL return file_put_contents($this->path.date('YmdH')."/".$file.".txt", date('Y-m-d H:i:s').json_encode($message).PHP_EOL,FILE_APPEND); }
最后在我我们的核心文件中引入日志类
//初始化日志存储方式\core\lib\log::init();
//调用日志存储方式
\core\lib\log::log("control:".$control." "."antion:".$action);
然后运行框架出现日志文件,运行成功!!
转载于:https://www.cnblogs.com/quanzhiguo/p/7363386.html
相关资源:Android MVC框架 网络封装