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')
。
我的 .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')
。