## 改造为基于 PSR-3 的日志组件 `MixPHP` 的 `mix\base\Log` 组件本来就是支持 `PSR-3` 的,但是为了保持框架的轻量级特性,所以框架没有直接依赖 `psr/log` 包,因此用户只需增加 `LoggerInterface` 的 implements 即可。 ### 改造步骤 首先安装 `psr/log` 库。 ``` composer require psr/log ``` 然后创建一个继承 `mix\base\Log` 类,实现 `Psr\Log\LoggerInterface` 接口的日志组件。 ```php <?php namespace apps\httpd\components; use Psr\Log\LoggerInterface; use mix\base\Log; class Logger extends Log implements LoggerInterface { } ``` - 然后修改配置文件的注册: class `mix\base\Log` 修改为 `apps\httpd\components\Logger` 即可。 ```php // 日志 'log' => [ // 类路径 'class' => 'apps\httpd\components\Logger', // 日志记录级别 'level' => ['emergency', 'alert', 'critical', 'error', 'warning', 'notice', 'info', 'debug'], // 日志目录 'dir' => 'logs', // 日志轮转类型 'rotate' => apps\httpd\components\Logger::ROTATE_DAY, // 最大文件尺寸 'maxFileSize' => 0, ], ```