我打开了旧应用程序
# php artisan --version
Laravel Framework 5.5.18
并在我的本地笔记本电脑和远程服务器上进行测试(两种情况下均为ubuntu 18) 我突然发现.env文件中有一些变量,例如:
UPLOADS_CMSITEM_IMAGES_URL = 'uploads/cms_items/'
UPLOADS_CMSITEM_IMAGES_DIR = 'uploads/cms_items/'
UPLOADS_CATEGORY_IMAGES_URL = 'uploads/categories/'
UPLOADS_CATEGORY_IMAGES_DIR = 'uploads/categories/'
并在我的模型中调用它,我的值为空
public static function getCategoryUrl(int $category_id, string $img, bool $check_existing= false) : string
{
if ( empty($img) ) return '';
$base_url= with(new Settings)->getBaseUrl();
$UPLOADS_CATEGORY_IMAGES_URL= env('UPLOADS_CATEGORY_IMAGES_URL');
我的路径无效...
我跑步
php artisan config:cache
几次,但是UPLOADS_CATEGORY_IMAGES_URL返回空值...
可能如何以及如何解决?
谢谢!
答案 0 :(得分:0)
您应该使用配置来访问您的.env
值。命令php artisan config:cache
用于刷新这些配置文件(位于'config'文件夹中)。为了简单起见,您可以将其添加到/config/app.php
。
/config/app.php
...
'uploads_category_image_url' => env('UPLOADS_CATEGORY_IMAGES_URL', '[some default value]'),
...
在您的模型中
...
$UPLOADS_CATEGORY_IMAGES_URL = config('app.uploads_category_image_url');
...
注意,如果在多个环境中都使用默认值,则可以使用默认值。这样可以更轻松地初始设置新环境,并确保您的代码中永远不会有未设置的配置值。