我在.env文件中有一些变量具有匹配的名称,如下所示
MY_SITE_01=http://www.google.com
MY_SITE_02=http://www.facebook.com
MY_SITE_03=http://www.twitter.com
当前使用
来获取值 env('MY_SITE_01')
env('MY_SITE_02')
env('MY_SITE_03')
有没有一种方法可以动态地执行此操作,或者只是传递MY_SITE即可获取变量的所有全名。
答案 0 :(得分:0)
有一种解决问题的方法,您可以将逗号分隔的网站网址存储到单个env变量中,如下所示:
MY_SITES=http://www.google.com,http://www.facebook.com,http://www.twitter.com
当需要检索其值时,可以执行以下操作:
$mySites = explode(',', env('MY_SITES'));
答案 1 :(得分:0)
您可以制作一个my_site.php
文件并将其放置在config
文件夹中,并且在文件中您可以按以下方式返回数据:
<?php
return [
'MY_SITE' => [
'http://www.google.com',
'http://www.facebook.com',
'http://www.twitter.com'
]
];
然后在您的控制器或您想要的任何其他地方,您可以使用config帮助器来检索值。
print_r(config('my_site.MY_SITE'));
答案 2 :(得分:0)
将这些环境添加到config/app.php
,
'MY_SITES' => [
'MY_SITE_01' => env('MY_SITE_01', 'http://www.google.com'),
'MY_SITE_02' => env('MY_SITE_02', 'http://www.facebook.com'),
'MY_SITE_03' => env('MY_SITE_03', 'http://www.twitter.com')
]
得到它,
print_r(config('app.MY_SITES'));
这将从.env
文件中获得价值,因此不再需要管理多个位置。