最佳的方式在环境文件中创建变量是什么?

17 浏览
0 Comments

最佳的方式在环境文件中创建变量是什么?

在laravel中,我需要在.env文件中创建变量。根据文档和一些相关的帖子(通过谷歌搜索得到),我需要在.env文件中添加变量。\n我尝试了以下代码:\nSANDBOX_PAYPAL_CLIENT_ID=7I3D9\nSANDBOX_PAYPAL_CLIENT_SECRET=S2E4C5R6E7T\n我对于在这里添加变量后,是只需要在控制器中调用它们还是需要在./config/目录中再次设置它们感到困惑。什么是最佳实践,有人可以指导我吗?我将非常感激。谢谢。

0
0 Comments

问题的出现原因:在使用环境文件(env file)创建变量时,可能存在以下问题:

- 变量分散存放,不方便统一管理

- 需要处理空值的情况,如果配置不存在,需要设置默认值

- 想要使用统一的标准来管理变量

- 如果直接在代码中使用env函数获取变量,需要处理可能的空值情况

- 字符串中包含空格可能会导致问题,需要使用引号括起来

解决方法:

可以按照以下方式解决上述问题:

1)创建一个名为ConfigVariables.php的文件,在其中声明所有的环境变量。

2)在代码中进行空值检查,如果配置不存在,使用默认值。

3)使用这种方式可以统一管理所有的环境变量。

4)如果直接在代码中使用env函数获取变量,需要处理可能的空值情况。

另外需要注意的是,如果字符串中包含空格,需要使用引号括起来。

以下是一个示例:

Email_Sender_Name=Danyal Sandeelo
echo it as: echo env("Email_Sender_Name");
Email_Sender_Name="Danyal Sandeelo"
echo it as: echo env("Email_Sender_Name");

可以参考这篇文章:Laravel 5.2 not reading env file

0
0 Comments

在编写应用程序时,我们经常需要使用环境变量来存储敏感信息或配置参数。在Laravel框架中,我们可以使用.env文件来管理这些环境变量。然而,如何在.env文件中创建变量是一个常见的问题。

Laravel提供了一个名为env()的助手函数,可以用来获取.env文件中的变量。这个函数接受一个参数,即要获取的变量的名称,并返回该变量的值。通过使用这个函数,我们可以轻松地在应用程序中访问.env文件中的变量。

很多包都会在它们的配置文件中获取.env文件中的变量,以便将配置集中在一起。使用config()助手函数可以获取这些值。我们可以在配置文件中使用config()函数来获取.env文件中的变量。

然而,如何实现这一点取决于你自己的需求和偏好。你可以根据自己的需要选择使用env()还是config()函数来获取.env文件中的变量。

总结起来,要在.env文件中创建变量,我们可以使用env()助手函数来获取这些变量。如果需要将这些变量集中在一起,我们可以在配置文件中使用config()函数来获取它们。具体的实现方式取决于个人的需求和偏好。

0
0 Comments

在Laravel中,我们可以将环境变量放在.env文件中,并且在配置文件中使用env()函数来获取它们的值。但需要注意的是,如果我们使用了配置缓存(php artisan config:cache),那么任何env()调用都将返回null,因为Laravel将不再加载.env文件。这一点在Laravel的官方文档中也有提到。

那么为什么需要将环境变量放在.env文件中并使用env()函数来获取呢?这是因为环境变量可能包含敏感信息,例如数据库密码等,将其放在.env文件中可以更好地保护这些信息。而使用env()函数可以方便地读取这些环境变量的值,并在配置文件中使用。

但是当我们使用了配置缓存之后,Laravel将不再动态地读取.env文件中的环境变量,而是从缓存中读取配置。这就导致了env()函数返回null的问题。

那么如何解决这个问题呢?解决方法是在使用配置缓存之前,先清除缓存(php artisan config:clear),然后再重新生成缓存(php artisan config:cache)。这样就可以确保在使用env()函数时能够正确地获取到.env文件中的环境变量的值。

总结起来,为了更好地保护敏感信息,我们应该将环境变量放在.env文件中,并使用env()函数来获取它们的值。但在使用配置缓存之后,需要先清除缓存再重新生成缓存,以确保能够正确地读取.env文件中的环境变量的值。

0