SOP.wtf/includes/MemoryLogger.php

65 lines
1.1 KiB
PHP

<?php
/**
*
* This file is part of Aura for PHP.
*
* @license https://opensource.org/licenses/MIT MIT
*
*/
namespace Aura\Sql\Profiler;
use Psr\Log\AbstractLogger;
/**
*
* A naive memory-based logger.
*
* @package Aura.Sql
*
*/
class MemoryLogger extends AbstractLogger
{
/**
*
* Log messages.
*
* @var array
*
*/
protected $messages = [];
/**
*
* Logs a message.
*
* @param mixed $level The log level (ignored).
*
* @param string $message The log message.
*
* @param array $context Data to interpolate into the message.
*
* @return null
*
*/
public function log($level, $message, array $context = [])
{
$replace = [];
foreach ($context as $key => $val) {
$replace['{' . $key . '}'] = $val;
}
$this->messages[] = strtr($message, $replace);
}
/**
*
* Returns the logged messages.
*
* @return array
*
*/
public function getMessages()
{
return $this->messages;
}
}