gpt4 book ai didi

php - 如何不在独白日志行中显示最后一个括号?

转载 作者:IT王子 更新时间:2023-10-28 23:49:02 24 4
gpt4 key购买 nike

// in my PHP code
$log = new Logger('LaurentCommand');
$log->pushHandler(new StreamHandler('./app/logs/LaurentCommand.log'));
$log->addInfo("Start command",array('username' => 'Joe', 'Age' => '28'));

日志文件 LaurentCommand.log 中的结果:

[2012-12-20 10:28:11] LaurentCommand.INFO: Start command {"username":"Joe","Age":"28"} []

为什么这个括号在最后?

最佳答案

那是额外的数据。 LineFormatter 的默认格式是 [%datetime%] %channel%.%level_name%: %message% %context% %extra%\n"。用户名/年龄是上下文,通常为空的额外内容会导致此空数组 []

如果您使用处理器将数据附加到日志记录,他们通常会将其写入额外的键以避免与上下文信息发生冲突。如果这对您来说确实是个问题,您可以更改默认格式并省略 %extra%

编辑:自 Monolog 1.11 起,LineFormatter 在构造函数中有一个 $ignoreEmptyContextAndExtra 参数,可让您删除这些参数,因此您可以使用它:

// the last "true" here tells it to remove empty []'s
$formatter = new LineFormatter(null, null, false, true);
$handler->setFormatter($formatter);

关于php - 如何不在独白日志行中显示最后一个括号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13968967/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com