function ErrorHandler::setDefaultLogger
Sets a logger to non assigned errors levels.
Parameters
LoggerInterface $logger A PSR-3 logger to put as default for the given levels:
array|int|null $levels An array map of E_* to LogLevel::* or an integer bit field of E_* constants:
bool $replace Whether to replace or not any existing logger:
1 call to ErrorHandler::setDefaultLogger()
- ErrorHandler::__construct in vendor/
symfony/ error-handler/ ErrorHandler.php
File
-
vendor/
symfony/ error-handler/ ErrorHandler.php, line 208
Class
- ErrorHandler
- A generic ErrorHandler for the PHP engine.
Namespace
Symfony\Component\ErrorHandlerCode
public function setDefaultLogger(LoggerInterface $logger, array|int|null $levels = \E_ALL, bool $replace = false) : void {
$loggers = [];
if (\is_array($levels)) {
foreach ($levels as $type => $logLevel) {
if (empty($this->loggers[$type][0]) || $replace || $this->loggers[$type][0] === $this->bootstrappingLogger) {
$loggers[$type] = [
$logger,
$logLevel,
];
}
}
}
else {
$levels ??= \E_ALL;
foreach ($this->loggers as $type => $log) {
if ($type & $levels && (empty($log[0]) || $replace || $log[0] === $this->bootstrappingLogger)) {
$log[0] = $logger;
$loggers[$type] = $log;
}
}
}
$this->setLoggers($loggers);
}