Laravel不读取环境变量

Laravel不读取环境变量,laravel,environment-variables,laravel-artisan,Laravel,Environment Variables,Laravel Artisan,是否有人对env变量有问题?出于某种原因,每次我使用helperenv('VARIABLE')时,它都返回null。事情发生得出乎意料,我真的不知道原因。重新启动apache/IDE/计算机不起作用。解决方案很简单,但IDE和调试器都没有说明这一点。它只返回null。使用php artisan config:cache时,根据文档: 如果在部署过程中执行php-artisan-config:cache命令,则应确保仅从配置文件中的调用env()函数 显然,我在配置文件之外有env变量,因此在缓存

是否有人对
env
变量有问题?出于某种原因,每次我使用helper
env('VARIABLE')
时,它都返回
null
。事情发生得出乎意料,我真的不知道原因。重新启动apache/IDE/计算机不起作用。

解决方案很简单,但IDE和调试器都没有说明这一点。它只返回
null
。使用php artisan config:cache时,根据文档:

如果在部署过程中执行
php-artisan-config:cache
命令,则应确保仅从配置文件中的调用
env()
函数

显然,我在配置文件之外有
env
变量,因此在缓存之后,我无法再在外部使用它。php artisan配置:clear将使其恢复工作

关于
env
的用法,我发现更多的是,它应该只在配置文件中使用。您可以使用其他助手方法
config()
从项目的其余部分访问
env
变量。确保将其分配给配置文件中的另一个密钥,例如
'key'=>env('CACHE\u 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');
如果到现在还不工作

尝试另一种语法来读取env变量

$value=getenv('VARIABLE_NAME');

谢谢@MajhabHabib这对我很有效