php - Laravel 5.7 中的常量抛出已定义的错误
问题描述
我在 Laravel 5.7 中创建了一个项目,并在 config 目录中创建了文件 constants.php。当我尝试运行 php artisan config:cache 时,出现以下错误。“ErrorException:已定义常量 XXX_XXX”
我已将所有常量定义为 define('XXXX_XXXX', 'bla bla'); 所有这些都是我的包所需的标准常量。
我做了以下事情:
- 我已经搜索了整个项目,很明显我从未在其他任何地方定义过相同的项目。
- 如果我删除该常量,它会在下一个define() 中显示错误。
- 如果我从 config 目录中删除该文件,则 artisan 命令将成功执行,并且我可以在 bootstrap/cache 目录中看到配置缓存文件。但是即使我将文件粘贴回配置目录后,我的程序也会由于错误(因为未定义常量)而中止。
- 如果我从 bootstrap/cache 目录中删除配置缓存文件,代码将完全正常执行(我没有运行命令 config:cache)。
我非常需要这个常量,同时缓存要运行的配置。我猜不出问题所在。
注:config/contants.php
全部内容为define('XXX', 'xxx'); 简单地回显 XYZ;任何需要的地方。标准 php 常量。
解决方案
试试这个方法
在下面定义常量值
if (!defined('constant')) define('constant', 'value');
推荐阅读
- javascript - 删除表格元素中的白线
- angular - 打字稿 - 如何解决“类型'未定义'不可分配给类型'XXXX'”?
- firebase - 带有 HTML/CSS 的 Firebase 身份验证自定义密码重置模板
- c++ - MATLAB 将函数构建到 c++
- github-api - 通过 CLI 获取 GitHub API 令牌,用于 CLI
- php - 计算特定索引PHP中元素最大值的算法
- javascript - 数组中的文本转换为对象
- php - Laravel 文件图像未显示在生产服务器中
- android - 如何在不被 Kotlin 弃用的情况下使导航和状态栏变亮
- javascript - 为什么我在使用 if/else 语句时会出现意外行为?