Log::debug() 输出的日志结尾有两个空格,强迫症受不了,怕是我搞错了什么

就是这样的:

[2022-12-31 12:54:40] local.DEBUG:   

我在 VS Code 里用 Hex Editor 看过了,是两个空格。上面是三个空格,因为“local.DEBUG:”后面也有个空格,我输出的是空字符串。语法错误之类的输出的日志结尾就没有这两个空格,好像是一个空格。刚开始我以为是中文的问题,毕竟语法错误之类的都是英文。但是就算我用 Log::debug(‘’); 也还是有那两个空格。

我用英文在谷歌上搜过“laravel log line end two space”了,没找到什么东西。

《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
最佳答案

那些是占位符之间的空格,文件日志使用 LineFormatte 格式化日志,
%message% %context% %extra% 前面分别有个空格,
所以空日志末尾有三个空格,只有 message 时末尾有两个空格,有 context 时末尾有一个空格,
文件日志好像没用到 extra,所以至少会有一个空格

// vendor\monolog\monolog\src\Monolog\Formatter\LineFormatter.php

public const SIMPLE_FORMAT =
 "[%datetime%] %channel%.%level_name%: %message% %context% %extra%\n";

file

如果你想改变这个格式,可以参考文档自定义 Formatter
日志《Laravel 9 中文文档》

file

1年前 评论
讨论数量: 1

那些是占位符之间的空格,文件日志使用 LineFormatte 格式化日志,
%message% %context% %extra% 前面分别有个空格,
所以空日志末尾有三个空格,只有 message 时末尾有两个空格,有 context 时末尾有一个空格,
文件日志好像没用到 extra,所以至少会有一个空格

// vendor\monolog\monolog\src\Monolog\Formatter\LineFormatter.php

public const SIMPLE_FORMAT =
 "[%datetime%] %channel%.%level_name%: %message% %context% %extra%\n";

file

如果你想改变这个格式,可以参考文档自定义 Formatter
日志《Laravel 9 中文文档》

file

1年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!