php - Laravel 日志更改无需操作,helpers.php 问题
问题描述
开发过程中打开网站日志,发现大量同文错误:
local.ERROR: Cannot redeclare fun() (previously declared in C:\laragon\www\am\bootstrap\helpers.php:10) {"exception":"[object] (Symfony\\Component\\ErrorHandler\\Error\\FatalError(code: 0): Cannot redeclare errorText() (previously declared in C:\\laragon\\www\\am\\bootstrap\\helpers.php:10) at C:\\laragon\\www\\am\\app\\helpers.php:10)
起初我以为这些错误与我在本地网站上的操作同时发生,但结果这些错误每 1 分钟出现在日志中。我不明白是什么激怒了他们。运行过程中浏览器没有出现这样的错误,即使网站几个小时没有动作,日志仍然每分钟都在填满。
我学到了关于帮助文件的一切。唯一的选择是检查该功能是否存在,但这不是最佳实践,特别是因为该站点可以正常工作并且在此过程中不会出现任何错误。
功能检查示例:
if (! function_exists('fun')) {
function fun($field) {
return view('static.error', ['field' => $field]);
}
}
但是重写和包装几十个函数并不是一个好主意。此外,问题仍然存在,我仍然不清楚这些错误出现在哪里以及如何出现,是什么引起了它们?另外考虑到我有一个静态的 php 网站。
解决方案
我会尽量用最简单的语言来解释一切。长时间寻找答案让我想到了一件显而易见的事情。通过在 bootstrap laravel 目录中创建一个文件来解决整个问题。我相信这里重要答案的意见,但它们与今天的查询不再相关。
同样重要的是不要将 helpers.php 留在 app 目录中,即使它没有连接到任何地方。这就是导致不断的日志条目的原因。
所有这些都将避免任何类型的重复错误,并且将是合规的。
推荐阅读
- python - 如何为 Python 3 Jupyter Notebook 安装 Plotly?
- c# - Sqlite SELECT 使用来自 c# 列表的数据而不在 for 循环中迭代?
- typescript - 如何模拟 FileReader 的失败
- automation - 自动化 Google Takeout 下载
- google-app-maker - Google App Maker:无法将草稿记录与草稿数据源中的记录相关联
- javascript - 如何在谷歌闭包库上修复 sha256 hmac 加密?
- ios - 如何快速在位图图像的边界内绘制笔划
- javascript - 单击时向第 n 个孩子添加次要图像
- proxy - ng-serve 代理配置选项未按预期工作
- c++ - 如何在 C++ 中复制一个类?