Laravel 5.6 .env 值解析为(未知)

Laravel 5.6 .env value resolving as (unknown)

我的 .env 文件中有这些值:

APP_IMG_PATH="/img/"
APP_IMG_LOGO="sclogo.png"

然后在我的 header 中我这样做:

<img src="{!! env('APP_IMG_PATH') . env('APP_IMG_LOGO') !!}" class="navbar-logo"/>

但是日志没有显示,在 Chrome 检查中我得到

<img src(unknown) class="navbar-logo">

我尝试清除配置缓存并重新创建它:

php artisan config:cache;

但结果是一样的。感谢任何帮助。

向 env 文件添加新内容后,您需要清除缓存。

php artisan config:clear
php artisan config:cache

配置缓存禁用 env() 调用。一旦配置被缓存,对 env() 的任何调用都将 return 为 null。

Laravel 团队的选择可能很糟糕,但我们的想法是鼓励您在代码中使用 config(),而不是 env()。

相反,向您的 config/app.php 添加新行(如果这是您选择的位置):

'img_path' => env('APP_IMG_PATH'),
'img_logo' => env('APP_IMG_LOGO'),

然后重新创建您的配置缓存并在您的应用程序中使用 config('app.img_path')config('app.img_logo')