Laravel 不读取环境变量
Laravel does not read env variables
有人对 env
变量有疑问吗?出于某种原因,helper env('VARIABLE')
returns null
每次我使用它。它发生得很意外,我真的不知道原因。重新启动 apache/IDE/computer 不起作用。
解决方案很简单,但 IDE 和调试器都没有说明。它只是 returns null
。当您使用 php artisan config:cache
时,根据文档:
If you execute php artisan config:cache
command during your deployment process, you should be sure that you are only calling the env()
function from within your configuration files.
显然我在配置文件之外有 env
个变量,所以在缓存之后我不能再在外面使用它了。 php artisan config:clear
让它恢复工作。
我发现了更多关于 env
用法的信息,它应该 仅 在配置文件中使用。您可以使用其他辅助方法 config()
从项目的其余部分访问 env
变量。请务必将其分配给配置文件中的另一个键,例如'key' => env('CACHE_DRIVER')
此外,每次更改.env
文件时,您都必须记住运行 php artisan config:cache
。 Laravel 在缓存之前不会加载新值。如果没有缓存,则不需要。
运行指挥部
composer dump-autoload
php artisan cache:clear
php artisan config:clear
php artisan view:clear
现在尝试阅读
$value = env('VARIABLE_NAME');
如果到现在还没工作,
尝试另一种语法来读取环境变量。
$value=getenv('VARIABLE_NAME');
在我的情况下,这只是因为我正在使用 php artisan serve
,只需重新启动它,服务器命令可能会读取 env 并保持在启动时间。
请使用它对我有用,使用 git bash 或 cmd 并通过此命令
$ rm bootstrap/cache/config.php
此命令清除缓存文件夹
就运行
php artisan config:clear
它解决了我的问题。
有人对 env
变量有疑问吗?出于某种原因,helper env('VARIABLE')
returns null
每次我使用它。它发生得很意外,我真的不知道原因。重新启动 apache/IDE/computer 不起作用。
解决方案很简单,但 IDE 和调试器都没有说明。它只是 returns null
。当您使用 php artisan config:cache
时,根据文档:
If you execute
php artisan config:cache
command during your deployment process, you should be sure that you are only calling theenv()
function from within your configuration files.
显然我在配置文件之外有 env
个变量,所以在缓存之后我不能再在外面使用它了。 php artisan config:clear
让它恢复工作。
我发现了更多关于 env
用法的信息,它应该 仅 在配置文件中使用。您可以使用其他辅助方法 config()
从项目的其余部分访问 env
变量。请务必将其分配给配置文件中的另一个键,例如'key' => env('CACHE_DRIVER')
此外,每次更改.env
文件时,您都必须记住运行 php artisan config:cache
。 Laravel 在缓存之前不会加载新值。如果没有缓存,则不需要。
运行指挥部
composer dump-autoload
php artisan cache:clear
php artisan config:clear
php artisan view:clear
现在尝试阅读
$value = env('VARIABLE_NAME');
如果到现在还没工作,
尝试另一种语法来读取环境变量。
$value=getenv('VARIABLE_NAME');
在我的情况下,这只是因为我正在使用 php artisan serve
,只需重新启动它,服务器命令可能会读取 env 并保持在启动时间。
请使用它对我有用,使用 git bash 或 cmd 并通过此命令
$ rm bootstrap/cache/config.php
此命令清除缓存文件夹
就运行
php artisan config:clear
它解决了我的问题。