amenadiel/slim-phpconsole

为Slim框架提供的PHP控制台日志支持

0.1.1 2016-03-11 14:09 UTC

This package is auto-updated.

Last update: 2024-08-29 03:31:29 UTC


README

Slim框架的PHP控制台日志写入器

Packagist

使用此自定义日志写入器,通过Slim框架将日志消息输出到浏览器的控制台,使用PHP-Console

安装

只需将 amenadiel/slim-phpconsole 添加到您的 composer.json 文件中的 require 或 require-dev 部分

{
    "require": {
        "amenadiel/slim-phpconsole":"~0.0.4"
    }
}

使用方法

实例化日志写入器。如果您不希望自动启动处理器,请将 false 作为参数传递,否则默认为 true

处理器启动后,它将将自己设置为错误和异常处理器,除非您进行了其他设置。

    $logwriter = new \Amenadiel\SlimPHPConsole\PHPConsoleWriter(true);

    $app = new \Slim\Slim(array(
        'log.enabled' => true,
        'log.level' => \Slim\Log::DEBUG,
        'log.writer' => $logwriter
    ));

从版本 0.0.6 开始,此适配器扩展了 Slim\Middleware。因此,您也可以使用您的应用的 add 方法。

    $app = new \Slim\Slim(array(
        'log.enabled' => true,
        'log.level' => \Slim\Log::DEBUG
    ));

    $app->add(new \Amenadiel\SlimPHPConsole\PHPConsoleWriter);

两种将PHP-Console设置为日志记录器的方式几乎相同。之后,您可以使用 $app->log 的方法发送消息到浏览器的控制台。

    $app->log->debug('Debug called!');
    $app->log->info('This is just info');
    $app->log->warning('Heads Up! This is a warning');

您可以通过使用此适配器的 debug 方法将自定义标签传递给PHPConsole,该方法将其参数转发到PHPConsole的 debug 方法。

    $app->log->getWriter()->debug('This has a custom tag', 'custom.tag');

如果您在应用的其他地方直接使用PHPConsole,请记住不要启动两次,因为它将抛出异常。使用其 isStarted 方法检查它是否已经启动。

    $myHandler = \PhpConsole\Handler::getInstance();
    
    if (!$myHandler->isStarted()) {
        $myHandler->start(); // Only start it if it hasn't been started yet
    }

可选设置

您可以通过获取处理器实例或连接器实例的引用来使用PHP-Console的配置方法。例如

   $logwriter = new \Amenadiel\SlimPHPConsole\PHPConsoleWriter(false);
   $handler = $logwriter->getHandler();
   $handler->setHandleErrors(false);  // disable errors handling, must be done before 'start' method
   $handler->start();

   $connector = $logwriter->getConnector();
   $connector->setPassword('macoy123'); //sets a very insecure passwd