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

时间:2018-08-19 21:30:12

标签: laravel laravel-5.6

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

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

然后在标题中执行以下操作:

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

但是日志没有显示,在Chrome Inspect中,我得到了

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

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

php artisan config:cache;

但是结果是一样的。任何帮助表示赞赏。

2 个答案:

答案 0 :(得分:3)

配置缓存禁用env()调用。一旦配置被缓存,对env()的任何调用都将返回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')

答案 1 :(得分:1)

在将新事物添加到环境文件之后,您需要清除缓存。

php artisan config:clear
php artisan config:cache